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

#ifndef __gnu_java_security_Properties$1__
#define __gnu_java_security_Properties$1__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace gnu
  {
    namespace java
    {
      namespace security
      {
          class Properties;
          class Properties$1;
      }
    }
  }
}

class gnu::java::security::Properties$1 : public ::java::lang::Object
{

public: // actually package-private
  Properties$1(::gnu::java::security::Properties *);
public:
  virtual ::java::lang::Object * run();
public: // actually package-private
  ::gnu::java::security::Properties * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$0;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_java_security_Properties$1__
