public bool TryFindStandingSpotOrChair(CompMusicSpot musicSpot, Pawn musician, Thing instrument, out LocalTargetInfo target)
        {
            IntVec3 standingSpot;
            Thing   chair;

            target = null;

            PerformanceManager pm = musician.Map.GetComponent <PerformanceManager>();

            CompMusicalInstrument comp = instrument.TryGetComp <CompMusicalInstrument>();

            if (comp.Props.isBuilding)
            {
                if (pm.TryFindChairAt(comp, musician, out chair))
                {
                    target = chair;
                    return(true);
                }
                else if (pm.TryFindSpotAt(comp, musician, out standingSpot))
                {
                    target = standingSpot;
                    return(true);
                }
            }
            else
            {
                if (pm.TryFindSitSpotOnGroundNear(musicSpot, musician, out standingSpot))
                {
                    target = standingSpot;
                    return(true);
                }
            }

            return(false);
        }