slot machine in java

Java is a versatile programming language that can be used to create a wide variety of applications, including games. In this article, we will explore how to create a simple slot machine game using Java. This project will cover basic concepts such as random number generation, loops, and user interaction. Prerequisites Before diving into the code, ensure you have the following: Basic knowledge of Java programming. A Java Development Kit (JDK) installed on your machine. An Integrated Development Environment (IDE) such as Eclipse or IntelliJ IDEA.

  • Cash King Palace
    new
    Royal Wins100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Lucky Ace Palace
    Luck&Luxury100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Starlight Betting Lounge
    Celestial Bet100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Spin Palace Casino
    Win Big Now100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Silver Fox Slots
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Golden Spin Casino
    Luxury Play100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Royal Fortune Gaming
    Opulence & Thrills100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Lucky Ace Casino
    Luck&Luxury100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Diamond Crown Casino
    Opulence & Fun100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more
  • Victory Slots Resort
    Spin to Win100% / $1500
    Casino popularity:
    Collecting more data...
    Payment methods
    • Mifinity
    • Google Pay
    • PIX
    • EcoPayz
    • Neteller
    • Apple Pay
    • Visa
    • Sofort
    • Interac
    • Wagering: 35 x (b)
    • Withdrawal time: 1 days
    • Minimum deposit to casino: $30
    • Bonus max bet: $5
    • Established: 2024
    • Free Spins: 200
    • 1st Deposit Bonus:100% / $1500 + 200 Free Spins
    • Bonus code: FRUIT22nd Deposit Bonus:100% / $1500 + 75 Free Spins
    • Bonus code: FRUIT33rd Deposit Bonus:75% / $3000 + 75 Free Spins
    • Bonus code: FRUIT44th Deposit Bonus:50% / $4500 + 200 Free Spins
    • Leading selection of slots
    • VISA casino site
    • HD streaming casino games
    • Newly unveiled casino
    • Signup offer now available
    • Mr. Gamble special bonuses
    Show more

slot machine in java

Java is a versatile programming language that can be used to create a wide variety of applications, including games. In this article, we will explore how to create a simple slot machine game using Java. This project will cover basic concepts such as random number generation, loops, and user interaction.

Prerequisites

Before diving into the code, ensure you have the following:

  • Basic knowledge of Java programming.
  • A Java Development Kit (JDK) installed on your machine.
  • An Integrated Development Environment (IDE) such as Eclipse or IntelliJ IDEA.

Step 1: Setting Up the Project

  1. Create a New Java Project:

    • Open your IDE and create a new Java project.
    • Name the project SlotMachine.
  2. Create a New Class:

    • Inside the project, create a new Java class named SlotMachine.

Step 2: Defining the Slot Machine Class

The SlotMachine class will contain the main logic for our slot machine game. Here’s a basic structure:

public class SlotMachine {
    // Constants for the slot machine
    private static final int NUM_SLOTS = 3;
    private static final String[] SYMBOLS = {"Cherry", "Lemon", "Orange", "Plum", "Bell", "Bar"};

    // Main method to run the game
    public static void main(String[] args) {
        // Initialize the game
        boolean playAgain = true;
        while (playAgain) {
            // Game logic goes here
            playAgain = play();
        }
    }

    // Method to handle the game logic
    private static boolean play() {
        // Generate random symbols for the slots
        String[] result = new String[NUM_SLOTS];
        for (int i = 0; i < NUM_SLOTS; i++) {
            result[i] = SYMBOLS[(int) (Math.random() * SYMBOLS.length)];
        }

        // Display the result
        System.out.println("Spinning...");
        for (String symbol : result) {
            System.out.print(symbol + " ");
        }
        System.out.println();

        // Check for a win
        if (result[0].equals(result[1]) && result[1].equals(result[2])) {
            System.out.println("Jackpot! You win!");
        } else {
            System.out.println("Sorry, better luck next time.");
        }

        // Ask if the player wants to play again
        return askToPlayAgain();
    }

    // Method to ask if the player wants to play again
    private static boolean askToPlayAgain() {
        System.out.print("Do you want to play again? (yes/no): ");
        Scanner scanner = new Scanner(System.in);
        String response = scanner.nextLine().toLowerCase();
        return response.equals("yes");
    }
}

Step 3: Understanding the Code

  1. Constants:

    • NUM_SLOTS: Defines the number of slots in the machine.
    • SYMBOLS: An array of possible symbols that can appear in the slots.
  2. Main Method:

    • The main method initializes the game and enters a loop that continues as long as the player wants to play again.
  3. Play Method:

    • This method handles the core game logic:
      • Generates random symbols for each slot.
      • Displays the result.
      • Checks if the player has won.
      • Asks if the player wants to play again.
  4. AskToPlayAgain Method:

    • Prompts the player to decide if they want to play again and returns the result.

Step 4: Running the Game

  1. Compile and Run:

    • Compile the SlotMachine class in your IDE.
    • Run the program to start the slot machine game.
  2. Gameplay:

    • The game will display three symbols after each spin.
    • If all three symbols match, the player wins.
    • The player can choose to play again or exit the game.

Creating a slot machine in Java is a fun and educational project that introduces you to basic programming concepts such as loops, arrays, and user input. With this foundation, you can expand the game by adding more features, such as betting mechanics, different win conditions, or even a graphical user interface (GUI). Happy coding!

cheat codes for slot machines

The Dark Side of Slot Machines: Cheating Codes and their Consequences

Introduction

Slot machines have been a staple in casinos and gaming establishments for decades, offering players a chance to win big with every spin. However, behind the glitz and glamour lies a complex world of cheating codes and exploitative tactics that can leave both gamblers and operators at odds.

What are Cheating Codes?

In the context of slot machines, “cheating codes” refer to any pre-determined strategies or exploits used by players to gain an unfair advantage over the game. These codes can range from simple techniques such as exploiting specific machine settings to more sophisticated methods involving statistical analysis and programming expertise.

Examples of Cheating Codes:

  • Slot Machine Exploits: Some players have discovered that certain slot machines, especially those with specific software or hardware configurations, can be manipulated using advanced mathematical models. These models can predict the probability of winning combinations and even influence the machine’s behavior to favor the player.
  • Malicious Programming: In some cases, rogue programmers might intentionally embed cheat codes into a game’s source code to ensure a particular outcome or exploit vulnerabilities in the system.

The Dangers of Cheating Codes

While cheating codes might seem appealing to players looking for an edge, they pose significant risks and consequences for both individuals and the gaming industry as a whole:

  • Financial Loss: Players who use cheat codes often lose money in the long run, as casinos adjust their machines to counter exploitative tactics.
  • Reputation Damage: Casinos that tolerate or engage in cheating codes risk damaging their reputation among honest players and regulatory bodies.
  • Regulatory Issues: Cheating codes can lead to serious regulatory problems for gaming establishments. In many jurisdictions, operating a casino that permits cheating is illegal.

Prevention Measures

To prevent the misuse of cheat codes, casinos and game developers have implemented various security measures:

  1. Regular Audits: Conducting regular audits and checks on slot machines ensures that they operate within predetermined parameters.
  2. Advanced Encryption: Games are encrypted to protect their source code from tampering or manipulation.
  3. Player Tracking: Casinos track player behavior, allowing them to identify suspicious activity and take appropriate action.

Conclusion

Cheat codes for slot machines pose a significant threat to the integrity of gaming establishments and individual players alike. By understanding the risks associated with these tactics and implementing robust security measures, we can create a safer and more transparent gaming environment for everyone involved.

slot machine backdrop

What is a Slot Machine Backdrop?

A slot machine backdrop is an essential component in the design of modern slot machines found in casinos, online gaming platforms, and other gaming environments. It serves as a visual representation of the game’s theme, setting the tone for the player’s experience.

Types of Slot Machine Backdrops

There are several types of backdrops used in slot machines:

  • Static Images: These are pre-designed images that remain unchanged throughout the gameplay.
  • Animated GIFs: These dynamic images can change frequently, often to reflect different stages or outcomes within the game.
  • Video Clips: Some slot machines use short video clips as their backdrop, typically tied to specific events or results.
  • Interactive Elements: Certain games may incorporate interactive elements, such as puzzles, mini-games, or other engaging features, that serve as the backdrop for gameplay.

Design Considerations

The design of a slot machine backdrop is crucial for its overall impact and player engagement. Key considerations include:

  • Theme Consistency: The backdrop should align with the game’s theme, maintaining a consistent narrative throughout.
  • Visual Appeal: A visually appealing backdrop can enhance the gaming experience by creating an immersive environment.
  • Clarity and Legibility: Important information such as win amounts, bonus features, or control buttons must be clearly visible on the backdrop.

Technical Aspects

Developing slot machine backdrops involves a combination of design skills and technical expertise:

Programming Languages Used

Several programming languages are used for developing game backdrops, including:

  • C++: A versatile language used in many aspects of game development.
  • Java: Known for its object-oriented approach, Java is often used for game logic and mechanics.
  • Python: Its simplicity and versatility make Python a popular choice for scripting tasks.

Game Engines Used

The following are some popular game engines used in developing slot machine backdrops:

  • Unity: A cross-platform engine that supports 2D and 3D game development.
  • Unreal Engine: Known for its high-performance capabilities, Unreal Engine is often used in complex graphics-intensive games.

Industry Impact

Slot machine backdrops have become an essential part of modern gaming experiences:

In the Entertainment Industry

Backdrops play a crucial role in setting the tone for various entertainment experiences. They can range from creating immersive game worlds to transporting players into different environments or time periods.

In the Gambling and Gaming Industries

In these industries, backdrops are used to create engaging slot machine games that cater to diverse player preferences. The visual appeal of backdrops can significantly influence a game’s success.

In the Games Industry

The games industry has witnessed a surge in innovative uses of backdrops, from interactive puzzles to immersive environments. These creative approaches have led to increased player engagement and retention.

《Slot Machine Backdrop》 is an integral part of modern gaming experiences, encompassing various aspects such as design considerations, technical expertise, programming languages used, game engines used, industry impact, and the entertainment, gambling, and games industries.

python slot machine

Creating a Python slot machine is a fun and educational project that combines programming skills with the excitement of gambling. Whether you’re a beginner looking to learn Python or an experienced developer wanting to explore game development, this guide will walk you through the process of building a simple slot machine game.

Table of Contents

  1. Introduction
  2. Prerequisites
  3. Basic Concepts
  4. Building the Slot Machine
  5. Enhancing the Slot Machine
  6. Conclusion

Introduction

A slot machine, also known as a fruit machine or poker machine, is a gambling device that creates a game of chance for its users. Traditionally, slot machines have three or more reels that spin when a button is pushed. In this Python project, we’ll simulate a simple slot machine with three reels and basic symbols.

Prerequisites

Before you start, ensure you have the following:

  • Basic knowledge of Python programming.
  • Python installed on your computer. You can download it from python.org.
  • A text editor or IDE (Integrated Development Environment) like Visual Studio Code, PyCharm, or Jupyter Notebook.

Basic Concepts

To build a slot machine in Python, you need to understand a few key concepts:

  • Reels: The spinning wheels that display symbols.
  • Symbols: The icons or images on the reels, such as fruits, numbers, or letters.
  • Paylines: The lines on which symbols must align to win.
  • Betting: The amount of money a player wagers on a spin.
  • Payouts: The winnings a player receives based on the symbols aligned.

Building the Slot Machine

Step 1: Setting Up the Environment

First, create a new Python file, e.g., slot_machine.py. This will be the main file where you’ll write your code.

Step 2: Defining the Slot Machine Class

Create a class to represent the slot machine. This class will contain methods to handle the game logic, such as spinning the reels and calculating payouts.

import random

class SlotMachine:
    def __init__(self):
        self.symbols = ['🍒', '🍋', '🍇', '🔔', '⭐', '💎']
        self.reels = 3
        self.paylines = 1
        self.bet = 1
        self.balance = 100

    def spin(self):
        return [random.choice(self.symbols) for _ in range(self.reels)]

    def calculate_payout(self, result):
        if len(set(result)) == 1:
            return self.bet * 10
        elif len(set(result)) == 2:
            return self.bet * 2
        else:
            return 0

Step 3: Implementing the Spin Function

The spin method randomly selects symbols for each reel. The calculate_payout method determines the winnings based on the symbols aligned.

Step 4: Handling User Input and Game Logic

Create a loop to handle user input and manage the game flow. The player can choose to spin the reels or quit the game.

def play_game():
    slot_machine = SlotMachine()
    while slot_machine.balance > 0:
        print(f"Balance: {slot_machine.balance}")
        action = input("Press 's' to spin, 'q' to quit: ").lower()
        if action == 'q':
            break
        elif action == 's':
            result = slot_machine.spin()
            payout = slot_machine.calculate_payout(result)
            slot_machine.balance -= slot_machine.bet
            slot_machine.balance += payout
            print(f"Result: {' '.join(result)}")
            print(f"Payout: {payout}")
        else:
            print("Invalid input. Please try again.")
    print("Game over. Thanks for playing!")

if __name__ == "__main__":
    play_game()

Step 5: Displaying the Results

After each spin, display the result and the payout. The game continues until the player runs out of balance or chooses to quit.

Enhancing the Slot Machine

To make your slot machine more engaging, consider adding the following features:

  • Multiple Paylines: Allow players to bet on multiple lines.
  • Different Bet Sizes: Enable players to choose different bet amounts.
  • Sound Effects: Add sound effects for spinning and winning.
  • Graphics: Use libraries like Pygame to create a graphical interface.

Building a Python slot machine is a rewarding project that combines programming skills with the excitement of gambling. By following this guide, you’ve created a basic slot machine that can be expanded with additional features. Whether you’re a beginner or an experienced developer, this project offers a fun way to explore Python and game development. Happy coding!

Source

  1. slot machine in java
  2. slot machine in java
  3. slot machine in java
  4. slot machine in java
  5. slot machine in java
  6. slot machine in java

Frequently Questions

How to Implement a Slot Machine Algorithm in Java?

To implement a slot machine algorithm in Java, start by defining the symbols and their probabilities. Use a random number generator to select symbols for each reel. Create a method to check if the selected symbols form a winning combination. Implement a loop to simulate spinning the reels and display the results. Ensure to handle betting, credits, and payouts within the algorithm. Use object-oriented principles to structure your code, such as creating classes for the slot machine, reels, and symbols. This approach ensures a clear, modular, and maintainable implementation of a slot machine in Java.

What are the steps to create a basic slot machine game in Java?

Creating a basic slot machine game in Java involves several steps. First, set up the game structure with classes for the slot machine, reels, and symbols. Define the symbols and their values. Implement a method to spin the reels and generate random symbols. Create a method to check the result of the spin and calculate the winnings. Display the results to the user. Handle user input for betting and spinning. Finally, manage the game loop to allow continuous play until the user decides to quit. By following these steps, you can build a functional and engaging slot machine game in Java.

 

How do I program a simple slot machine game using Java?

To create a simple slot machine game in Java, start by defining the game's logic. Use arrays to represent the reels and random number generators to simulate spins. Implement a method to check for winning combinations and calculate payouts. Display the results using a simple text-based interface. Here's a basic example: 1) Define the reels with symbols. 2) Create a method to spin the reels. 3) Check for winning lines. 4) Display the result. This approach ensures a clear, functional slot machine game. For a more interactive experience, consider enhancing the UI with JavaFX or Swing.

How can I resolve slot problems in Java for Game 1 and Game 2?

Resolving slot problems in Java for Game 1 and Game 2 involves ensuring proper synchronization and state management. For Game 1, use Java's synchronized blocks or methods to prevent race conditions when multiple threads access shared resources. For Game 2, implement a state machine to manage transitions between game states, ensuring each state is handled correctly. Additionally, validate input and output operations to avoid slot conflicts. Utilize Java's concurrency utilities like Atomic variables and locks for fine-grained control. Regularly test and debug your code to identify and fix any slot-related issues promptly.

What are the steps to create a basic slot machine game in Java?

Creating a basic slot machine game in Java involves several steps. First, set up the game structure with classes for the slot machine, reels, and symbols. Define the symbols and their values. Implement a method to spin the reels and generate random symbols. Create a method to check the result of the spin and calculate the winnings. Display the results to the user. Handle user input for betting and spinning. Finally, manage the game loop to allow continuous play until the user decides to quit. By following these steps, you can build a functional and engaging slot machine game in Java.