// Copyright 2014 The Go Authors.  All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

package java

import (
	"Java/java/lang"
	"Java/java/lang/Character"
)

type (
	F lang.Float
	L lang.Long
	O lang.Object
	R lang.Runnable
	S Character.Subset // Inner class
)
