
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __gnu_javax_crypto_jce_cipher_PBES2$HMacTiger$Cast5__
#define __gnu_javax_crypto_jce_cipher_PBES2$HMacTiger$Cast5__

#pragma interface

#include <gnu/javax/crypto/jce/cipher/PBES2$HMacTiger.h>
extern "Java"
{
  namespace gnu
  {
    namespace javax
    {
      namespace crypto
      {
        namespace jce
        {
          namespace cipher
          {
              class PBES2$HMacTiger$Cast5;
          }
        }
      }
    }
  }
}

class gnu::javax::crypto::jce::cipher::PBES2$HMacTiger$Cast5 : public ::gnu::javax::crypto::jce::cipher::PBES2$HMacTiger
{

public:
  PBES2$HMacTiger$Cast5();
  static ::java::lang::Class class$;
};

#endif // __gnu_javax_crypto_jce_cipher_PBES2$HMacTiger$Cast5__
