print(linkage_row)

#Now here we will decide our loop structure

actual_1 = arr[clustered_p_1].reshape(1, 2)

actual_2 = arr[clustered_p_2].reshape(1, 2)

arr = np.delete(
    arr, [clustered_p_1, clustered_p_2],
    axis=0)  # removing rows that were clustered from original array

# temp=Clustering()
print(arr)
print(agg_clustering.get_distance(actual_1, arr, axis=1).shape)
print(agg_clustering.get_distance(cen=actual_2, arr=arr, axis=1))
print(
    np.minimum(agg_clustering.get_distance(actual_1, arr, axis=1),
               agg_clustering.get_distance(actual_2, arr, axis=1)),
    "\t MINIMUM element wise")

print('\n', linkage_matrix, 'and linkage dictionary is', linkage_dictionary)
print("#####")

# To be deleted --- The name of the point appended will come from name of iterable variable in for loop
new_array = np.append(new_array, np.array([11, 11]).reshape(1, 2), axis=0)
# forming new array 1. Appending a point who coordinates are name of newly formed cluster

arr = np.concatenate(
    (new_array,