/**
 * This function checks the return date of a borrowed book and determines if any late fee needs to be charged.
 * It uses the left and right shift operators to perform bitwise operations.
 *
 * @param requestDate The date the book was borrowed in the format yyyymmdd.
 * @param returnDate The date the book was returned in the format yyyymmdd.
 * @param fee The late fee charged per day.
 * @return The message indicating whether a late fee needs to be charged and if so, the amount.
 */
fun librarianCheckReturnDate(requestDate: Int, returnDate: Int, fee: Int): String {

    // Check if the return date is not earlier than the request date
    if (returnDate < requestDate) {
        return "Invalid return date"
    }

    // Calculate the difference in days between the request date and the return date
    val daysDifference = returnDate - requestDate

    // Check if the difference is greater than 14 days
    if (daysDifference shr 3 != 0) {
        return "Days difference exceeds 14"
    }

    // Calculate the late fee
    val lateFee = daysDifference * fee

    // Check if a late fee needs to be charged
    // Add your logic here

    return "" // Return appropriate message
}
/**
 * This function checks the return date of a borrowed book and determines if any late fee needs to be charged.
 * It uses the left and right shift operators to perform bitwise operations.
 *
 * @param requestDate The date the book was borrowed in the format yyyymmdd.
 * @param returnDate The date the book was returned in the format yyyymmdd.
 * @param fee The late fee charged per day.
 * @return The message indicating whether a late fee needs to be charged and if so, the amount.
 */
fun librarianCheckReturnDate(requestDate: Int, returnDate: Int, fee: Int): String {
/**
 * This function checks the return date of a borrowed book and determines if any late fee needs to be charged.
 * It uses the left and right shift operators to perform bitwise operations.
 *
 * @param requestDate The date the book was borrowed in the format yyyymmdd.
 * @param returnDate The date the book was returned in the format yyyymmdd.
 * @param fee The late fee charged per day.
 * @return The message indicating whether a late fee needs to be charged and if so, the amount.
 */
fun librarianCheckReturnDate(requestDate: Int, returnDate: Int, fee: Int): String {

    // Check if the return date is not earlier than the request date
    if (returnDate < requestDate) {
        return "Invalid return date"
    }

    // Calculate the difference in days between the request date and the return date
    val daysDifference = returnDate - requestDate

    // Check if the difference is greater than 14 days
    if (daysDifference shr 3 != 0) {
        return "Days difference exceeds 14"
    }

    // Calculate the late fee
    val lateFee = daysDifference * fee

    // Check if a late fee needs to be charged
    // Add your logic here

    return "" // Return appropriate message
}