450 Interview Questions - LeetCode Edition
450 Interview Questions - LeetCode Edition
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Trie
Trie
Trie
Trie
Trie
Trie
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Modified by Tushar Sadhwani. Some questions are close approximations of the original. Original sheet is also attached below. Bonus questions ad
How to use: Make a copy, then select the first column and reset the background color. Then solve and mark th
Remember that if the solution is locked or not very good, Discussions page sorted by Most Votes will probably have a better answe
GitHub Repository (for submitting issues) | My solutions (Python)
Problem:
Reverse the array
Find the "Kth" max and min element of an array
Given an array which consists of only 0, 1 and 2. Sort the array without using any sorting algo
Move all the negative elements to one side of the array
Find the Union and Intersection of the two arrays.
Write a program to cyclically rotate an array by one.
find Largest sum contiguous Subarray [V. IMP]
Minimise the maximum difference between heights [V.IMP]
Minimum no. of Jumps to reach end of an array
find duplicate in an array of N+1 Integers
Merge 2 sorted arrays without using Extra space.
Kadane's Algo [V.V.V.V.V IMP]
Merge Intervals
Next Permutation
Count Inversion
Best time to buy and Sell stock
find all pairs on integer array whose sum is equal to given number
find common elements In 3 sorted arrays
Rearrange the array in alternating positive and negative items with O(1) extra space
Find if there is any subarray with sum equal to 0
Find factorial of a large number
find maximum product subarray
Find longest coinsecutive subsequence
Given an array of size n and a number k, fin all elements that appear more than " n/k " times.
Maximum profit by buying and selling a share atmost twice
Find whether an array is a subset of another array
Find the triplet that sum to a given value
Trapping Rain water problem
Chocolate Distribution problem (Related: Closest Subsequence Sum)
Smallest Subarray with sum greater than a given value
Three way partitioning of an array around a given value
Minimum swaps required bring elements less equal K together
Minimum no. of operations required to make an array palindrome
Median of 2 sorted arrays of equal size
Median of 2 sorted arrays of different size
Largest number by joining numbers
Bonus: Reorganize string
Bonus: Maximum points you can obtain from cards
Bonus: Wiggle Sort
Bonus: Sort Colors
Bonus: Minumum swaps to make strings equal
Spiral traversal on a Matrix
Search an element in a matrix
Find median in a row wise sorted matrix
Find row with maximum no. of 1's O(m+n) solution
Print elements in sorted order using row-column wise sorted matrix
Maximum size rectangle
Find a specific pair in matrix
Rotate matrix by 90 degrees
Kth smallest element in a row-cpumn wise sorted matrix
Common elements in all rows of a given matrix
Reverse a String
Check whether a String is Palindrome or not
Find Duplicate characters in a string
Why strings are immutable in Java?
Write a Code to check whether one string is a rotation of another
Write a Program to check whether a string is a valid shuffle of two strings or not
Count and Say problem
Write a program to find the longest Palindrome in a string.[ Longest palindromic Substring]
Find Longest Recurring Subsequence in String
Print all Subsequences of a string.
Print all the permutations of the given string
Split the Binary string into two substring with equal 0’s and 1’s
Word Wrap Problem [VERY IMP]. (https://www.youtube.com/watch?v=ENyox7kNKeY&t=1032s)
EDIT Distance [Very Imp]
Find next greater number with same set of digits. [Very Very IMP]
Balanced Parenthesis problem.[Imp]
Word break Problem[ Very Imp]
Rabin Karp Algo
KMP Algo
Convert a Sentence into its equivalent mobile numeric keypad sequence.
Minimum number of bracket reversals needed to make an expression balanced.
Count All Palindromic Subsequence in a given String.
Count of number of given string in 2D character array
Search a Word in a 2D Grid of characters. (similar enough to previous question)
Boyer Moore Algorithm for Pattern Searching.
Converting Roman Numerals to Decimal
Longest Common Prefix
Number of flips to make binary string alternate
Find the first repeated word in string.
Minimum number of swaps for bracket balancing.
Find the longest common subsequence between two strings.
Program to generate all possible valid IP addresses from given string.
Write a program tofind the smallest window that contains all characters of string itself.
Rearrange characters in a string such that no two adjacent are same
Minimum characters to be added at front to make string palindrome
Given a sequence of words, print all anagrams together
Find the smallest window in a string containing all characters of another string
Recursively remove all adjacent duplicates
String matching where one string contains wildcard characters
Function to find Number of customers who could not get a computer
Transform One String to Another using Minimum Number of Given Operation
Check if two given strings are isomorphic to each other
Recursively print all sentences that can be formed from list of word lists
Coin ChangeProblem
Knapsack Problem
Binomial CoefficientProblem
Permutation CoefficientProblem
Program for nth Catalan Number
Matrix Chain Multiplication
Edit Distance
Subset Sum Problem
Friends Pairing Problem
Gold Mine Problem
Assembly Line SchedulingProblem
Painting the Fenceproblem
Maximize The Cut Segments
Longest Common Subsequence
Longest Repeated Subsequence
Longest Increasing Subsequence
Space Optimized Solution of LCS
LCS (Longest Common Subsequence) of three strings
Maximum Sum Increasing Subsequence
Count all subsequences having product less than K
Longest subsequence such that difference between adjacent is one
Maximum subsequence sum such that no three are consecutive
Egg Dropping Problem
Maximum Length Chain of Pairs
Maximum size square sub-matrix with all 1s
Maximum sum of pairs with specific difference
Min Cost PathProblem
Maximum difference of zeros and ones in binary string
Minimum number of jumps to reach end
Minimum cost to fill given weight in a bag
Minimum removals from array to make max –min <= K
Longest Common Substring
Count number of ways to reacha given score in a game
Count Balanced Binary Trees of Height h
LargestSum Contiguous Subarray [V>V>V>V IMP ]
Smallest sum contiguous subarray
Unbounded Knapsack (Repetition of items allowed)
Word Break Problem
Largest Independent Set Problem
Partition problem
Longest Palindromic Subsequence
Count All Palindromic Subsequence in a given String
Longest Palindromic Substring
Longest alternating subsequence
Weighted Job Scheduling
Coin game winner where every player has three choices
Count Derangements (Permutation such that no element appears in its original position) [ IMPORTANT ]
Maximum profit by buying and selling a share at most twice [ IMP ]
Optimal Strategy for a Game
Optimal Binary Search Tree
Palindrome PartitioningProblem
Word Wrap Problem
Mobile Numeric Keypad Problem [ IMP ]
Boolean Parenthesization Problem
Largest rectangular sub-matrix whose sum is 0
Largest area rectangular sub-matrix with equal number of 1’s and 0’s [ IMP ]
Maximum sum rectangle in a 2D matrix
Maximum profit by buying and selling a share at most k times
Find if a string is interleaved of two other strings
Maximum Length of Pair Chain
Bonus: Perfect Squares
Count set bits in an integer
Find the two non-repeating elements in an array of repeating elements
Count number of bits to be flipped to convert A to B (original question's answer is to just xor and count bits)
Count total set bits in all numbers from 1 to n
Program to find whether a no is power of two
Find position of the only set bit
Copy set bits in a range
Divide two integers without using multiplication, division and mod operator
Calculate square of a number without using *, / and pow()
Power Set
d that I like :)
m as you like.
Topic:
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Array
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
Matrix
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
String
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
LinkedList
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Binary Trees
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
Greedy
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
BackTracking
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Heap
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Graph
Trie
Trie
Trie
Trie
Trie
Trie
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Dynamic Programming
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Bit Manipulation
Questions by Love Babbar:
Youtube Channel: https://www.youtube.com/channel/UCQHLxxBFrbfdrk1jF0moTpw
Problem:
Reverse the array
Find the maximum and minimum element in an array
Find the "Kth" max and min element of an array
Given an array which consists of only 0, 1 and 2. Sort the array without using any sorting algo
Move all the negative elements to one side of the array
Find the Union and Intersection of the two sorted arrays.
Write a program to cyclically rotate an array by one.
find Largest sum contiguous Subarray [V. IMP]
Minimise the maximum difference between heights [V.IMP]
Minimum no. of Jumps to reach end of an array
find duplicate in an array of N+1 Integers
Merge 2 sorted arrays without using Extra space.
Kadane's Algo [V.V.V.V.V IMP]
Merge Intervals
Next Permutation
Count Inversion
Best time to buy and Sell stock
find all pairs on integer array whose sum is equal to given number
find common elements In 3 sorted arrays
Rearrange the array in alternating positive and negative items with O(1) extra space
Find if there is any subarray with sum equal to 0
Find factorial of a large number
find maximum product subarray
Find longest coinsecutive subsequence
Given an array of size n and a number k, fin all elements that appear more than " n/k " times.
Maximum profit by buying and selling a share atmost twice
Find whether an array is a subset of another array
Find the triplet that sum to a given value
Trapping Rain water problem
Chocolate Distribution problem
Smallest Subarray with sum greater than a given value
Three way partitioning of an array around a given value
Minimum swaps required bring elements less equal K together
Minimum no. of operations required to make an array palindrome
Median of 2 sorted arrays of equal size
Median of 2 sorted arrays of different size
Reverse a String
Check whether a String is Palindrome or not
Find Duplicate characters in a string
Why strings are immutable in Java?
Write a Code to check whether one string is a rotation of another
Write a Program to check whether a string is a valid shuffle of two strings or not
Count and Say problem
Write a program to find the longest Palindrome in a string.[ Longest palindromic Substring]
Find Longest Recurring Subsequence in String
Print all Subsequences of a string.
Print all the permutations of the given string
Split the Binary string into two substring with equal 0’s and 1’s
Word Wrap Problem [VERY IMP].
EDIT Distance [Very Imp]
Find next greater number with same set of digits. [Very Very IMP]
Balanced Parenthesis problem.[Imp]
Word break Problem[ Very Imp]
Rabin Karp Algo
KMP Algo
Convert a Sentence into its equivalent mobile numeric keypad sequence.
Minimum number of bracket reversals needed to make an expression balanced.
Count All Palindromic Subsequence in a given String.
Count of number of given string in 2D character array
Search a Word in a 2D Grid of characters.
Boyer Moore Algorithm for Pattern Searching.
Converting Roman Numerals to Decimal
Longest Common Prefix
Number of flips to make binary string alternate
Find the first repeated word in string.
Minimum number of swaps for bracket balancing.
Find the longest common subsequence between two strings.
Program to generate all possible valid IP addresses from given string.
Write a program tofind the smallest window that contains all characters of string itself.
Rearrange characters in a string such that no two adjacent are same
Minimum characters to be added at front to make string palindrome
Given a sequence of words, print all anagrams together
Find the smallest window in a string containing all characters of another string
Recursively remove all adjacent duplicates
String matching where one string contains wildcard characters
Function to find Number of customers who could not get a computer
Transform One String to Another using Minimum Number of Given Operation
Check if two given strings are isomorphic to each other
Recursively print all sentences that can be formed from list of word lists
Write a Program to reverse the Linked List. (Both Iterative and recursive)
Reverse a Linked List in group of Given Size. [Very Imp]
Write a program to Detect loop in a linked list.
Write a program to Delete loop in a linked list.
Find the starting point of the loop.
Remove Duplicates in a sorted Linked List.
Remove Duplicates in a Un-sorted Linked List.
Write a Program to Move the last element to Front in a Linked List.
Add “1” to a number represented as a Linked List.
Add two numbers represented by linked lists.
Intersection of two Sorted Linked List.
Intersection Point of two Linked Lists.
Merge Sort For Linked lists.[Very Important]
Quicksort for Linked Lists.[Very Important]
Find the middle Element of a linked list.
Check if a linked list is a circular linked list.
Split a Circular linked list into two halves.
Write a Program to check whether the Singly Linked list is a palindrome or not.
Deletion from a Circular Linked List.
Reverse a Doubly Linked list.
Find pairs with a given sum in a DLL.
Count triplets in a sorted DLL whose sum is equal to given value “X”.
Sort a “k”sorted Doubly Linked list.[Very IMP]
Rotate DoublyLinked list by N nodes.
Rotate a Doubly Linked list in group of Given Size.[Very IMP]
Can we reverse a linked list in less than O(n) ?
Why Quicksort is preferred for. Arrays and Merge Sort for LinkedLists ?
Flatten a Linked List
Sort a LL of 0's, 1's and 2's
Clone a linked list with next and random pointer
Merge K sorted Linked list
Multiply 2 no. represented by LL
Delete nodes which have a greater value on right side
Segregate even and odd nodes in a Linked List
Program for n’th node from the end of a Linked List
Find the first non-repeating character from a stream of characters
Coin ChangeProblem
Knapsack Problem
Binomial CoefficientProblem
Permutation CoefficientProblem
Program for nth Catalan Number
Matrix Chain Multiplication
Edit Distance
Subset Sum Problem
Friends Pairing Problem
Gold Mine Problem
Assembly Line SchedulingProblem
Painting the Fenceproblem
Maximize The Cut Segments
Longest Common Subsequence
Longest Repeated Subsequence
Longest Increasing Subsequence
Space Optimized Solution of LCS
LCS (Longest Common Subsequence) of three strings
Maximum Sum Increasing Subsequence
Count all subsequences having product less than K
Longest subsequence such that difference between adjacent is one
Maximum subsequence sum such that no three are consecutive
Egg Dropping Problem
Maximum Length Chain of Pairs
Maximum size square sub-matrix with all 1s
Maximum sum of pairs with specific difference
Min Cost PathProblem
Maximum difference of zeros and ones in binary string
Minimum number of jumps to reach end
Minimum cost to fill given weight in a bag
Minimum removals from array to make max –min <= K
Longest Common Substring
Count number of ways to reacha given score in a game
Count Balanced Binary Trees of Height h
LargestSum Contiguous Subarray [V>V>V>V IMP ]
Smallest sum contiguous subarray
Unbounded Knapsack (Repetition of items allowed)
Word Break Problem
Largest Independent Set Problem
Partition problem
Longest Palindromic Subsequence
Count All Palindromic Subsequence in a given String
Longest Palindromic Substring
Longest alternating subsequence
Weighted Job Scheduling
Coin game winner where every player has three choices
Count Derangements (Permutation such that no element appears in its original position) [ IMPORTANT ]
Maximum profit by buying and selling a share at most twice [ IMP ]
Optimal Strategy for a Game
Optimal Binary Search Tree
Palindrome PartitioningProblem
Word Wrap Problem
Mobile Numeric Keypad Problem [ IMP ]
Boolean Parenthesization Problem
Largest rectangular sub-matrix whose sum is 0
Largest area rectangular sub-matrix with equal number of 1’s and 0’s [ IMP ]
Maximum sum rectangle in a 2D matrix
Maximum profit by buying and selling a share at most k times
Find if a string is interleaved of two other strings
Maximum Length of Pair Chain
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->
<->