package com.google.android.m4b.maps;

import android.graphics.Bitmap;
import android.location.Location;
import android.os.IBinder;
import android.os.RemoteException;
import android.view.View;
import com.google.android.m4b.maps.g.l;
import com.google.android.m4b.maps.j.b;
import com.google.android.m4b.maps.j.d;
import com.google.android.m4b.maps.model.CameraPosition;
import com.google.android.m4b.maps.model.Circle;
import com.google.android.m4b.maps.model.CircleOptions;
import com.google.android.m4b.maps.model.GroundOverlay;
import com.google.android.m4b.maps.model.GroundOverlayOptions;
import com.google.android.m4b.maps.model.IndoorBuilding;
import com.google.android.m4b.maps.model.LatLng;
import com.google.android.m4b.maps.model.MapsEngineFeature;
import com.google.android.m4b.maps.model.MapsEngineLayer;
import com.google.android.m4b.maps.model.MapsEngineLayerOptions;
import com.google.android.m4b.maps.model.Marker;
import com.google.android.m4b.maps.model.MarkerOptions;
import com.google.android.m4b.maps.model.Polygon;
import com.google.android.m4b.maps.model.PolygonOptions;
import com.google.android.m4b.maps.model.Polyline;
import com.google.android.m4b.maps.model.PolylineOptions;
import com.google.android.m4b.maps.model.RuntimeRemoteException;
import com.google.android.m4b.maps.model.TileOverlay;
import com.google.android.m4b.maps.model.TileOverlayOptions;
import com.google.android.m4b.maps.model.internal.IGroundOverlayDelegate;
import com.google.android.m4b.maps.model.internal.IIndoorBuildingDelegate;
import com.google.android.m4b.maps.model.internal.IMapsEngineFeatureDelegate.Stub;
import com.google.android.m4b.maps.model.internal.IMapsEngineLayerDelegate;
import com.google.android.m4b.maps.model.internal.IMarkerDelegate;
import com.google.android.m4b.maps.model.internal.ITileOverlayDelegate;
import com.google.android.m4b.maps.r.af.a;
import com.google.android.m4b.maps.r.e;
import com.google.android.m4b.maps.r.e.a;
import com.google.android.m4b.maps.r.g;
import com.google.android.m4b.maps.r.h.a;
import com.google.android.m4b.maps.r.j.a;
import com.google.android.m4b.maps.r.m.a;
import com.google.android.m4b.maps.r.n.a;
import com.google.android.m4b.maps.r.o.a;
import com.google.android.m4b.maps.r.p.a;
import com.google.android.m4b.maps.r.q;
import com.google.android.m4b.maps.r.r.a;
import com.google.android.m4b.maps.r.s.a;
import com.google.android.m4b.maps.r.t.a;
import com.google.android.m4b.maps.r.v.a;
import com.google.android.m4b.maps.r.w.a;
import com.google.android.m4b.maps.r.x.a;
import com.google.android.m4b.maps.r.y.a;
import com.google.android.m4b.maps.r.z.a;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class GoogleMap
{
  public static final int MAP_TYPE_HYBRID = 4;
  public static final int MAP_TYPE_NONE = 0;
  public static final int MAP_TYPE_NORMAL = 1;
  public static final int MAP_TYPE_SATELLITE = 2;
  public static final int MAP_TYPE_TERRAIN = 3;
  private final g a;
  private UiSettings b;

  protected GoogleMap(g paramg)
  {
    this.a = ((g)l.a(paramg));
  }

  final g a()
  {
    return this.a;
  }

  public final Circle addCircle(CircleOptions paramCircleOptions)
  {
    try
    {
      Circle localCircle = new Circle(this.a.a(paramCircleOptions));
      return localCircle;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final GroundOverlay addGroundOverlay(GroundOverlayOptions paramGroundOverlayOptions)
  {
    try
    {
      IGroundOverlayDelegate localIGroundOverlayDelegate = this.a.a(paramGroundOverlayOptions);
      if (localIGroundOverlayDelegate != null)
      {
        GroundOverlay localGroundOverlay = new GroundOverlay(localIGroundOverlayDelegate);
        return localGroundOverlay;
      }
      return null;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final MapsEngineLayer addMapsEngineLayer(MapsEngineLayerOptions paramMapsEngineLayerOptions)
  {
    try
    {
      IMapsEngineLayerDelegate localIMapsEngineLayerDelegate = this.a.a(paramMapsEngineLayerOptions);
      if (localIMapsEngineLayerDelegate != null)
      {
        MapsEngineLayer localMapsEngineLayer = new MapsEngineLayer(localIMapsEngineLayerDelegate);
        return localMapsEngineLayer;
      }
      return null;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final Marker addMarker(MarkerOptions paramMarkerOptions)
  {
    try
    {
      IMarkerDelegate localIMarkerDelegate = this.a.a(paramMarkerOptions);
      if (localIMarkerDelegate != null)
      {
        Marker localMarker = new Marker(localIMarkerDelegate);
        return localMarker;
      }
      return null;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final Polygon addPolygon(PolygonOptions paramPolygonOptions)
  {
    try
    {
      Polygon localPolygon = new Polygon(this.a.a(paramPolygonOptions));
      return localPolygon;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final Polyline addPolyline(PolylineOptions paramPolylineOptions)
  {
    try
    {
      Polyline localPolyline = new Polyline(this.a.a(paramPolylineOptions));
      return localPolyline;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final TileOverlay addTileOverlay(TileOverlayOptions paramTileOverlayOptions)
  {
    try
    {
      ITileOverlayDelegate localITileOverlayDelegate = this.a.a(paramTileOverlayOptions);
      if (localITileOverlayDelegate != null)
      {
        TileOverlay localTileOverlay = new TileOverlay(localITileOverlayDelegate);
        return localTileOverlay;
      }
      return null;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void animateCamera(CameraUpdate paramCameraUpdate)
  {
    try
    {
      this.a.b(paramCameraUpdate.getRemoteObject());
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void animateCamera(CameraUpdate paramCameraUpdate, int paramInt, CancelableCallback paramCancelableCallback)
  {
    try
    {
      g localg = this.a;
      b localb = paramCameraUpdate.getRemoteObject();
      if (paramCancelableCallback == null);
      for (Object localObject = null; ; localObject = new a(paramCancelableCallback))
      {
        localg.a(localb, paramInt, (e)localObject);
        return;
      }
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void animateCamera(CameraUpdate paramCameraUpdate, CancelableCallback paramCancelableCallback)
  {
    try
    {
      g localg = this.a;
      b localb = paramCameraUpdate.getRemoteObject();
      if (paramCancelableCallback == null);
      for (Object localObject = null; ; localObject = new a(paramCancelableCallback))
      {
        localg.a(localb, (e)localObject);
        return;
      }
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void clear()
  {
    try
    {
      this.a.f();
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final CameraPosition getCameraPosition()
  {
    try
    {
      CameraPosition localCameraPosition = this.a.b();
      return localCameraPosition;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public IndoorBuilding getFocusedBuilding()
  {
    try
    {
      IIndoorBuildingDelegate localIIndoorBuildingDelegate = this.a.o();
      if (localIIndoorBuildingDelegate != null)
      {
        IndoorBuilding localIndoorBuilding = new IndoorBuilding(localIIndoorBuildingDelegate);
        return localIndoorBuilding;
      }
      return null;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final int getMapType()
  {
    try
    {
      int i = this.a.g();
      return i;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final float getMaxZoomLevel()
  {
    try
    {
      float f = this.a.c();
      return f;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final float getMinZoomLevel()
  {
    try
    {
      float f = this.a.d();
      return f;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  @Deprecated
  public final Location getMyLocation()
  {
    try
    {
      Location localLocation = this.a.k();
      return localLocation;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final Projection getProjection()
  {
    try
    {
      Projection localProjection = new Projection(this.a.m());
      return localProjection;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final UiSettings getUiSettings()
  {
    try
    {
      if (this.b == null)
        this.b = new UiSettings(this.a.l());
      UiSettings localUiSettings = this.b;
      return localUiSettings;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final boolean isBuildingsEnabled()
  {
    try
    {
      boolean bool = this.a.n();
      return bool;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final boolean isIndoorEnabled()
  {
    try
    {
      boolean bool = this.a.i();
      return bool;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final boolean isMyLocationEnabled()
  {
    try
    {
      boolean bool = this.a.j();
      return bool;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final boolean isTrafficEnabled()
  {
    try
    {
      boolean bool = this.a.h();
      return bool;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void moveCamera(CameraUpdate paramCameraUpdate)
  {
    try
    {
      this.a.a(paramCameraUpdate.getRemoteObject());
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setBuildingsEnabled(boolean paramBoolean)
  {
    try
    {
      this.a.d(paramBoolean);
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setContentDescription(String paramString)
  {
    try
    {
      this.a.b(paramString);
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final boolean setIndoorEnabled(boolean paramBoolean)
  {
    try
    {
      boolean bool = this.a.b(paramBoolean);
      return bool;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setInfoWindowAdapter(final InfoWindowAdapter paramInfoWindowAdapter)
  {
    if (paramInfoWindowAdapter == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new h.a()
      {
        public final b a(IMarkerDelegate paramAnonymousIMarkerDelegate)
        {
          return d.a(paramInfoWindowAdapter.getInfoWindow(new Marker(paramAnonymousIMarkerDelegate)));
        }

        public final b b(IMarkerDelegate paramAnonymousIMarkerDelegate)
        {
          return d.a(paramInfoWindowAdapter.getInfoContents(new Marker(paramAnonymousIMarkerDelegate)));
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setLocationSource(final LocationSource paramLocationSource)
  {
    if (paramLocationSource == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new j.a()
      {
        public final void a()
        {
          paramLocationSource.deactivate();
        }

        public final void a(final q paramAnonymousq)
        {
          paramLocationSource.activate(new LocationSource.OnLocationChangedListener()
          {
            public final void onLocationChanged(Location paramAnonymous2Location)
            {
              try
              {
                paramAnonymousq.a(paramAnonymous2Location);
                return;
              }
              catch (RemoteException localRemoteException)
              {
                throw new RuntimeRemoteException(localRemoteException);
              }
            }
          });
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setMapType(int paramInt)
  {
    try
    {
      this.a.a(paramInt);
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setMyLocationEnabled(boolean paramBoolean)
  {
    try
    {
      this.a.c(paramBoolean);
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOAuthTokenProvider(final OAuthTokenProvider paramOAuthTokenProvider)
  {
    if (paramOAuthTokenProvider == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new m.a()
      {
        public final String a()
        {
          return paramOAuthTokenProvider.getOAuthToken();
        }

        public final void a(String paramAnonymousString)
        {
          paramOAuthTokenProvider.invalidateOAuthToken(paramAnonymousString);
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnCameraChangeListener(final OnCameraChangeListener paramOnCameraChangeListener)
  {
    if (paramOnCameraChangeListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new n.a()
      {
        public final void a(CameraPosition paramAnonymousCameraPosition)
        {
          paramOnCameraChangeListener.onCameraChange(paramAnonymousCameraPosition);
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnIndoorStateChangeListener(final OnIndoorStateChangeListener paramOnIndoorStateChangeListener)
  {
    if (paramOnIndoorStateChangeListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new o.a()
      {
        public final void a()
        {
          paramOnIndoorStateChangeListener.onIndoorBuildingFocused();
        }

        public final void a(IIndoorBuildingDelegate paramAnonymousIIndoorBuildingDelegate)
        {
          paramOnIndoorStateChangeListener.onIndoorLevelActivated(new IndoorBuilding(paramAnonymousIIndoorBuildingDelegate));
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnInfoWindowClickListener(final OnInfoWindowClickListener paramOnInfoWindowClickListener)
  {
    if (paramOnInfoWindowClickListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new p.a()
      {
        public final void a(IMarkerDelegate paramAnonymousIMarkerDelegate)
        {
          paramOnInfoWindowClickListener.onInfoWindowClick(new Marker(paramAnonymousIMarkerDelegate));
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnMapClickListener(final OnMapClickListener paramOnMapClickListener)
  {
    if (paramOnMapClickListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new r.a()
      {
        public final void a(LatLng paramAnonymousLatLng)
        {
          paramOnMapClickListener.onMapClick(paramAnonymousLatLng);
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public void setOnMapLoadedCallback(final OnMapLoadedCallback paramOnMapLoadedCallback)
  {
    if (paramOnMapLoadedCallback == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new s.a()
      {
        public final void a()
        {
          paramOnMapLoadedCallback.onMapLoaded();
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnMapLongClickListener(final OnMapLongClickListener paramOnMapLongClickListener)
  {
    if (paramOnMapLongClickListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new t.a()
      {
        public final void a(LatLng paramAnonymousLatLng)
        {
          paramOnMapLongClickListener.onMapLongClick(paramAnonymousLatLng);
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnMapsEngineFeatureClickListener(final OnMapsEngineFeatureClickListener paramOnMapsEngineFeatureClickListener)
  {
    if (paramOnMapsEngineFeatureClickListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new v.a()
      {
        public final void a(List<IBinder> paramAnonymousList)
        {
          ArrayList localArrayList = new ArrayList(paramAnonymousList.size());
          Iterator localIterator = paramAnonymousList.iterator();
          while (localIterator.hasNext())
            localArrayList.add(new MapsEngineFeature(IMapsEngineFeatureDelegate.Stub.asInterface((IBinder)localIterator.next())));
          paramOnMapsEngineFeatureClickListener.onFeatureClick(localArrayList);
        }

        public final void b(List<IBinder> paramAnonymousList)
        {
          ArrayList localArrayList = new ArrayList(paramAnonymousList.size());
          Iterator localIterator = paramAnonymousList.iterator();
          while (localIterator.hasNext())
            localArrayList.add(new MapsEngineFeature(IMapsEngineFeatureDelegate.Stub.asInterface((IBinder)localIterator.next())));
          paramOnMapsEngineFeatureClickListener.onFeatureInformationReceived(localArrayList);
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnMarkerClickListener(final OnMarkerClickListener paramOnMarkerClickListener)
  {
    if (paramOnMarkerClickListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new w.a()
      {
        public final boolean a(IMarkerDelegate paramAnonymousIMarkerDelegate)
        {
          return paramOnMarkerClickListener.onMarkerClick(new Marker(paramAnonymousIMarkerDelegate));
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnMarkerDragListener(final OnMarkerDragListener paramOnMarkerDragListener)
  {
    if (paramOnMarkerDragListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new x.a()
      {
        public final void a(IMarkerDelegate paramAnonymousIMarkerDelegate)
        {
          paramOnMarkerDragListener.onMarkerDragStart(new Marker(paramAnonymousIMarkerDelegate));
        }

        public final void b(IMarkerDelegate paramAnonymousIMarkerDelegate)
        {
          paramOnMarkerDragListener.onMarkerDragEnd(new Marker(paramAnonymousIMarkerDelegate));
        }

        public final void c(IMarkerDelegate paramAnonymousIMarkerDelegate)
        {
          paramOnMarkerDragListener.onMarkerDrag(new Marker(paramAnonymousIMarkerDelegate));
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setOnMyLocationButtonClickListener(final OnMyLocationButtonClickListener paramOnMyLocationButtonClickListener)
  {
    if (paramOnMyLocationButtonClickListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new y.a()
      {
        public final boolean a()
        {
          return paramOnMyLocationButtonClickListener.onMyLocationButtonClick();
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  @Deprecated
  public final void setOnMyLocationChangeListener(final OnMyLocationChangeListener paramOnMyLocationChangeListener)
  {
    if (paramOnMyLocationChangeListener == null);
    try
    {
      this.a.a(null);
      return;
      this.a.a(new z.a()
      {
        public final void a(Location paramAnonymousLocation)
        {
          paramOnMyLocationChangeListener.onMyLocationChange(paramAnonymousLocation);
        }

        public final void a(b paramAnonymousb)
        {
          paramOnMyLocationChangeListener.onMyLocationChange((Location)d.a(paramAnonymousb));
        }
      });
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setPadding(int paramInt1, int paramInt2, int paramInt3, int paramInt4)
  {
    try
    {
      this.a.a(paramInt1, paramInt2, paramInt3, paramInt4);
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void setTrafficEnabled(boolean paramBoolean)
  {
    try
    {
      this.a.a(paramBoolean);
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public final void snapshot(SnapshotReadyCallback paramSnapshotReadyCallback)
  {
    snapshot(paramSnapshotReadyCallback, null);
  }

  public final void snapshot(final SnapshotReadyCallback paramSnapshotReadyCallback, Bitmap paramBitmap)
  {
    b localb;
    if (paramBitmap != null)
      localb = d.a(paramBitmap);
    while (true)
    {
      d locald = (d)localb;
      try
      {
        this.a.a(new af.a()
        {
          public final void a(Bitmap paramAnonymousBitmap)
          {
            paramSnapshotReadyCallback.onSnapshotReady(paramAnonymousBitmap);
          }

          public final void a(b paramAnonymousb)
          {
            paramSnapshotReadyCallback.onSnapshotReady((Bitmap)d.a(paramAnonymousb));
          }
        }
        , locald);
        return;
        localb = null;
      }
      catch (RemoteException localRemoteException)
      {
        throw new RuntimeRemoteException(localRemoteException);
      }
    }
  }

  public final void stopAnimation()
  {
    try
    {
      this.a.e();
      return;
    }
    catch (RemoteException localRemoteException)
    {
      throw new RuntimeRemoteException(localRemoteException);
    }
  }

  public static abstract interface CancelableCallback
  {
    public abstract void onCancel();

    public abstract void onFinish();
  }

  public static abstract interface InfoWindowAdapter
  {
    public abstract View getInfoContents(Marker paramMarker);

    public abstract View getInfoWindow(Marker paramMarker);
  }

  public static abstract interface OAuthTokenProvider
  {
    public abstract String getOAuthToken();

    public abstract void invalidateOAuthToken(String paramString);
  }

  public static abstract interface OnCameraChangeListener
  {
    public abstract void onCameraChange(CameraPosition paramCameraPosition);
  }

  public static abstract interface OnIndoorStateChangeListener
  {
    public abstract void onIndoorBuildingFocused();

    public abstract void onIndoorLevelActivated(IndoorBuilding paramIndoorBuilding);
  }

  public static abstract interface OnInfoWindowClickListener
  {
    public abstract void onInfoWindowClick(Marker paramMarker);
  }

  public static abstract interface OnMapClickListener
  {
    public abstract void onMapClick(LatLng paramLatLng);
  }

  public static abstract interface OnMapLoadedCallback
  {
    public abstract void onMapLoaded();
  }

  public static abstract interface OnMapLongClickListener
  {
    public abstract void onMapLongClick(LatLng paramLatLng);
  }

  public static abstract interface OnMapsEngineFeatureClickListener
  {
    public abstract void onFeatureClick(List<MapsEngineFeature> paramList);

    public abstract void onFeatureInformationReceived(List<MapsEngineFeature> paramList);
  }

  public static abstract interface OnMarkerClickListener
  {
    public abstract boolean onMarkerClick(Marker paramMarker);
  }

  public static abstract interface OnMarkerDragListener
  {
    public abstract void onMarkerDrag(Marker paramMarker);

    public abstract void onMarkerDragEnd(Marker paramMarker);

    public abstract void onMarkerDragStart(Marker paramMarker);
  }

  public static abstract interface OnMyLocationButtonClickListener
  {
    public abstract boolean onMyLocationButtonClick();
  }

  @Deprecated
  public static abstract interface OnMyLocationChangeListener
  {
    public abstract void onMyLocationChange(Location paramLocation);
  }

  public static abstract interface SnapshotReadyCallback
  {
    public abstract void onSnapshotReady(Bitmap paramBitmap);
  }

  static final class a extends e.a
  {
    private final GoogleMap.CancelableCallback a;

    a(GoogleMap.CancelableCallback paramCancelableCallback)
    {
      this.a = paramCancelableCallback;
    }

    public final void a()
    {
      this.a.onFinish();
    }

    public final void b()
    {
      this.a.onCancel();
    }
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.android.m4b.maps.GoogleMap
 * JD-Core Version:    0.6.2
 */