text:
OSA Publishing > Optics Express > Volume 26 > Issue 6 > Page 6715
James Leger, Editor-in-Chief
Coherent beam combination of four holmium amplifiers with phase control via a direct digital synthesizer chip
Michael R. Oermann, Neil Carmody, Alexander Hemming, Simon Rees, Nikita Simakov, Robert Swain, Keiron Boyd, Alan Davidson, Leonardo Corena, Dmitrii Stepanov, and John Haub
Michael R. Oermann,1,* Neil Carmody,1 Alexander Hemming,1 Simon Rees,1 Nikita Simakov,1 Robert Swain,2 Keiron Boyd,1 Alan Davidson,1 Leonardo Corena,1 Dmitrii Stepanov,1 and John Haub1
1Cyber and Electronic Warfare Division, Defence Science and Technology Group, Edinburgh, SA 5111, Australia
2Sub-Micron Engineering, Marlboro, New Jersey 07746, USA
*Corresponding author: michael.oermann@dst.defence.gov.au
M Oermann
N Carmody
A Hemming
S Rees
N Simakov
R Swain
K Boyd
A Davidson
L Corena
D Stepanov
J Haub
•https://doi.org/10.1364/OE.26.006715
Michael R. Oermann, Neil Carmody, Alexander Hemming, Simon Rees, Nikita Simakov, Robert Swain, Keiron Boyd, Alan Davidson, Leonardo Corena, Dmitrii Stepanov, and John Haub, "Coherent beam combination of four holmium amplifiers with phase control via a direct digital synthesizer chip," Opt. Express 26, 6715-6723 (2018)
Coherent beam combining of seven fiber chirped-pulse amplifiers using an interferometric phase measurement (OE)
Coherent beam combining of 61 femtosecond fiber amplifiers (OE)
Coherent beam combination of a hexagonal distributed high power fiber amplifier array (AO)
Table of Contents Category
Laser beam combining
Electrooptical modulators
Laser amplifiers
Thulium doped fiber lasers
Previously assigned OCIS codes
Lasers, fiber (140.3510)
Laser beam combining (140.3298)
Original Manuscript: November 30, 2017
Revised Manuscript: February 28, 2018
Manuscript Accepted: March 1, 2018
Optical Materials Express Advanced Solid-State Lasers 2017 (2017) Optics Express Advanced Solid-State Lasers 2017 (2017)
2. Experimental setup
References and links
We present the coherent beam combination of four 2100 nm holmium amplifiers with their phase controlled through acousto-optic modulators driven by the RF output of direct digital synthesizer chips. Phase alignment was achieved through the use of a field programmable gate array based stochastic parallel gradient descent algorithm.
Holmium-doped fibre lasers have many materials processing, medical and defence applications. The holmium-doped silica emission lies in the 2.1 μm atmospheric transmission window allowing for increased range in atmospheric propagation. In addition, its operation in the eye-safe wavelength range lends its use to applications where exposure from scattered and reflected light is of concern.
Single-mode holmium lasers and amplifiers have now demonstrated output powers of 407 W and 265 W, respectively, showing their potential for use in some higher power directed energy applications [1]. The holmium-doped fibre amplifiers employed in this paper were resonantly core-pumped by thulium oscillators operating at 1950 nm [2].
Laser beam combination for power scaling has been demonstrated using a number of laser technologies and more recently extensively investigated in ytterbium-doped fibre laser systems [3]. The three most widely demonstrated techniques for beam combination are; geometrical (incoherent beam) combination, which requires the pointing of multiple incoherent lasers on a target; spectral beam combination, involving the overlapping of multiple lasers of set wavelengths using a dispersive or wavelength selective optical element or elements; and coherent beam combination (CBC). In the 2 μm spectral region, spectral [4] and coherent beam combination [5] techniques have been demonstrated. Examples, however, have been limited to thulium based systems and at wavelengths shorter than 2040 nm. The power scaling potential of thulium doped fibre lasers and their use in CBC systems has been described by Goodno el al [3]. (Section 1.5.2.4). Here the relaxed tolerances for efficient coherent beam combination, associated with the longer wavelength of operation, are presented. The increased SBS threshold of laser systems operating at 2µm is also presented by Goodno et al. [6]. The higher SBS threshold enables the further power scaling of these systems without the need for frequency broadening and the associated path length matching that would be required in a CBC system.
Here we present our results for a coherently combined holmium-doped fibre amplifier system operating at 2100 nm. This system consisted of four channels whose phase alignment was optimized using a field programmable gate array (FPGA)-based stochastic parallel gradient descent (SPGD) algorithm.
There have been a number of different coherent beam combination approaches previously demonstrated. These include, heterodyne approaches [7], multiple and single frequency dithering techniques (frequency tagging) [8, 9] and the SPGD technique [10, 11]. A more comprehensive comparison between these different approaches is presented in reference [3]. Previous demonstrations where the phase control is applied through an acousto-optic modulator (AOM) have been limited to the heterodyne approach [12] and some frequency tagging demonstrations [13], both of which use a temporal frequency shift to impart a phase change. The novelty of the approach presented in this report is in the use of a direct digital synthesizer (DDS) chip to simultaneously provide the driving 80 MHz RF signal as well as apply the desired phase shift, through control of the RF signal phase, to the AOM of each channel. In contrast to the heterodyne phase control approach, implementing the SPGD algorithm allowed for the use of a single photodetector and removed the requirement for the reference beam. When compared to the frequency tagging techniques, the SPGD algorithm didn't require the demodulation of each channel's phase error from the detector signal. We also note here that AOM control via a DDS chip is not limited to SPGD phase control and can be adapted to other active beam combination techniques. The DDS chip provides agile and independent control of frequency, phase and amplitude of the RF signal driving the AOMs. As previously reported by Augst et al. [12], using the AOM as the phase modulator provides continuous phase control without needing to reset the voltage driving the electronic phase controller, piezo stretcher or electro-optic modulator (EOM) once the voltage limit of the device is reached. This is particularly important during the turn-on stage of the high power holmium amplifiers when the relative optical path length changes between the different channels can be in the order of hundreds or thousands of waves [8, 12].
To alleviate the requirement to path length match each of the channels, the linewidth of the seed laser needed to be sub-MHz. A commercial 2100 nm single longitudinal mode seed laser (AdValue) satisfied this requirement. The linewidth was calculated from the phase noise to be 500kHz. Its output was amplified and subsequently split into the four channels using in-house fabricated 50:50 polarization maintaining (PM) couplers. An isolator (Shinkosha) was used to prevent the amplification of backward propagating light by the pre-amplifier and protected the narrow linewidth master laser. The lasers used to pump the holmium-doped fibre amplifiers consisted of thulium-doped fibres (Nufern) spliced between in-house written fibre Bragg gratings [14] at 1950 nm, and were pumped by 790 nm laser diodes (LIMO). The 1950 nm pump light was coupled into the holmium-doped fibre amplifiers through in-house fabricated wavelength division multiplexers (WDMs), while the 2100 nm seed signal was coupled through the PM inputs and outputs of the WDMs. A second WDM was used to remove all the unabsorbed 1950 nm pump light from the output of the amplifier. After the holmium pre-amplifier, the light was split into the four channels and propagated through the AOMs (Gooch and Housego), where the phase control occurred. The AOMs used were specified for QCW operation with 6 W of RF power and their insertion loss was optimized for use at 2000 nm. In this setup we ran the AOMs CW with 3 W of RF power and at a longer wavelength of 2100 nm. The outputs of the AOMs were amplified by each of the channel's first stage amplifiers. These first stage amplifiers increased and balanced the power in each channel from ≈50 mW to 2.5 W (17 dB gain).
The first approach used to recombine the amplified channels was the filled aperture approach. This consisted of a coupler based beam splitter tree architecture and a wedge usedto sample the output chosen to emit the combined beam onto a photodetector. The photodetector provided a relative measurement of the output power and was used to measure the effect of the SPGD phase dithers. The setup is illustrated in Fig. 1.
Fig. 1 (a) Coherent laser beam combination setup including filled aperture beam recombination and (b) a schematic of the thulium pumped holmium amplifiers.
Download Full Size | PPT Slide | PDF
The beam recombination setup was later converted to demonstrate the tiled aperture recombination approach. In this demonstration, the four output beams were collimated and aligned into a 2 × 2 array. A representation of this setup is illustrated in Fig. 2. The 6 mm focal length lens and positioning of the Pyrocam III 250 mm from the lens produced a 40 × magnified image of the focal plane intensity profile on the camera. The iris in front of the detector was positioned the same distance from the magnifying lens as the Pyrocam III camera. As such the image observed from the camera was representative of the intensity distribution in the aperture plane.
Fig. 2 Tiled aperture recombination setup.
The SPGD algorithm provides each channel with a unique random amplitude phase shift. The magnitude of these phase shifts was constrained to a set maximum value. By repeated measurement and comparison of the resultant photodetector output and that for an oppositely signed phase shift, the system can be made to move toward a maximum or minimum. In this instantiation, an FPGA program generated the random number used for each channel's phase dither amplitude, updated the phase of each channel based on the result of the previous iteration, calculated the new phase shifts required for this iteration's dither and made the comparison between the responses of this dither ready for updating in the next iteration. The amplitude of the FPGA random number generator determines the phase dither amplitude.
The DDS parameters (frequency, amplitude and phase) are set using a resulting digital word from the FPGA.
The signal from the feedback detectors present on both recombination techniques, illustrated in Figs. 1 and 2, was used as the metric for optimization by the FPGA-based SPGD algorithm.
A Pyrocam III was used to observe the coherently combined output and to calculate the efficiency of the two recombination techniques.
After propagating through the AOMs, each channel was amplified up to 2.5 W. Measurements of the outputs from each of the amplifiers are provided in Fig. 3. The differing performances of each of the amplifiers was predominantly due to the different seed powers. This seed power variability was caused by the different insertion losses of the AOMs which ranged from 3.0 dB to 4.5 dB. The output power of each channel was adjusted to be equal by using individual diode driver current control. This is also illustrated in Fig. 3. Balancing of the output powers of each of the channels maximized the recombination efficiency of the filled aperture beam combination as well as maximized the power in the central lobe of the far field profile for the tiled aperture approach.
Fig. 3 Output characteristics for each of the amplifier channels as a function of pump power.
To test the performance of the phase control setup described in Section 2, a maximum phase dither amplitude was set for the SPGD algorithm, and the phase control was initiated. A representative output, using the Pyrocam III camera, of the filled aperture recombination is presented in Figs. 4(a) and 4(b) for the unlocked and locked cases respectively. Similarly Figs. 5(a)-(d) illustrate the output of the tiled aperture recombination.
Fig. 4 Output from the filled aperture recombination architecture (a) without and (b) with the detector output fed back into the SPGD algorithm.
Fig. 5 (a) Near field profile of the tiled aperture beam combination. Output observed on the Pyrocam III (b) with no coherence between the four channels, (c) with a common frequency shift applied to each channel but with no phase control and (d) with the detector output fed back into the SPGD algorithm for phase control. The image width for (b), (c) and (d) was 12.5 mm.
In the unlocked filled aperture case, the power in the four output beams was temporally varying with power moving between the outputs. In the phase controlled (locked) case, the combined output beam intensity was maximized and the power in the three low power outputs was reduced to just above the background noise of the Pyrocam III camera.
For the tiled aperture recombination, the near field profile consisted of four collimated beams with a beam radius of 3.1 mm and an array pitch of 10 mm. This corresponded to a fill factor of 30%. The near field profile is provided in Fig. 5(a). Some diffractive effects are observable in each of the beams due to a slight amount of clipping of the beams by the other channel's beam steering mirrors. In the unlocked case, represented in Fig. 5(b), the coherence between the channels was removed. In Fig. 5(c) each of the AOMs were driven at a common frequency and hence each channel underwent the same frequency shift. In this case, there was no control over the phases. The fringe pattern is scrolling in both the horizontal and vertical directions depending on the temporally varying phase relationship between each of the channels. In Fig. 5(d) the phase control electronics was activated and a stable intensity profile was generated.
The steady-state noise and the bandwidth of the system were studied as a function of the maximum phase dither amplitude. The system response time was measured by alternating the SPGD functionality between minimizing and maximizing the detector signal and measuring the time and hence number of iterations required to reach 90% convergence. These results arepresented in Fig. 6(a). Using the left hand axis, the convergence time is plotted as a function of the maximum permitted dither amplitude. The right hand axis shows the number of iterations required for convergence for the iteration time of 5.8 μs. As expected, the convergence time was dependent on the amplitude of the phase dithers. Once the detector signal converged on a maximum, the phase dithers associated with the SPGD optimization were then responsible for the residual phase misalignment between the channels in the combined output beam and hence intensity noise. Determining the optimum dither amplitude was a compromise between the bandwidth, and response time of the system, and the amplitude noise in the combined beam output. Figure 6(b) depicts an oscilloscope trace showing the convergence to a maximised output when using stochastic phase dithers on each channel up to a maximum of π/2. Due to the large phase changes that were occurring in each iteration, a maximised output was able to be achieved in less than four iterations. For an iteration time of 5.8μs, this corresponds to a convergence time of approximately 20 µs. The increased intensity noise that was consequential to allowing these large phase dithers to be applied is evident in Fig. 6(b) where the red arrow is pointing to a drop in the detector signal, which is proportional to the output beam intensity, of almost 50%. This drop in intensity occurred for half an iteration cycle and would have been caused by multiple channels undergoing large phase changes within the same iteration cycle.
Fig. 6 (a) The number of iterations (blue) required to converge on a maximized output for a range of maximum phase dither amplitudes and the convergence times (red) calculated using the iteration time of 5.8µs. (b) An oscilloscope trace of the detector signal, when changing from minimizing to maximizing the SPGD algorithm is provided. It illustrates the rapid convergence (≈20 μs) observed when large phase dithers are permitted. The time taken for one SPGD iteration to occur is indicated in white and the intensity noise that occurs when applying large phase changes is indicated in red.
To determine the noise that was present in the combined output, photodetector and Pyrocam III outputs were characterised after convergence. The relative intensity noise was measured to be approximately 10% for the maximum phase dither amplitude set to 0.2 rad (λ/32). The temporal stability of the output beam following activation of the phase control is illustrated in the BeamGauge intensity plot in Fig. 7(a) and 7(b). Figure 7(a) corresponds to the filled aperture recombination output with the plot illustrating the percentage of output power from the combined beam aperture before and after phase locking. Figure 7(b) is a plot of the peak intensity of the tiled aperture output before and after phase control.
Fig. 7 Temporal stability of the combined output following activation of the phase control for the (a) filled aperture and (b) tiled aperture combination.
The recombination efficiency was calculated from the Pyrocam III image of the output. For the filled aperture, recombination efficiencies of ≈80% were typical. This combination efficiency is attributed to a combination of the polarization miss alignment, the unbalanced channel powers and the residual phase offsets caused by the SPGD algorithm. Whenconsidering the polarization, the polarization extinction of the narrow linewidth seed temporally varied between 10 and 15 dB and the polarization extinction of the couplers were approximately 13 dB, the polarization offset is accountable for a drop in efficiency of ≈8%. The coupling ratios of the fibre couplers were accurate to within 3%, however this also resulted in a coupling loss of ≈6%. The residual phase offset between the channels associated with the SPGD algorithm's phase dither also contributed to a drop in efficiency. For a maximum phase dither of 0.2 rad, which corresponds to an RMS residual phase error of λ/23, calculated from the relative phase change that could be imparted between the channels in one iteration, a drop in efficiency of 4% would be observed. The measured combination efficiency of 80% is comparable to this maximum theoretical value of 82%. Recombination efficiencies of the tiled aperture demonstration were ≈35%, which was in close agreement with the fill factor of the near field array profile (≈30%). The slightly high measured value would have been due to the capturing of some side lobe power in the aperture set in the BeamGauge software as pictured in Fig. 5(d).
In summary, we have reported on, to our knowledge, the first demonstration of the coherent combination of a number of holmium-doped fibre MOPAs operating at a wavelength of 2100 nm. We believe this is the first demonstration where the phase control is applied through an AOM, with its RF driving frequency and phase information being controlled by the output of a DDS chip. The system used a SPGD-based phase alignment optimization technique and was demonstrated using filled aperture and tiled aperture recombination architectures. For the combination of four 2.5 W amplifiers, a filled aperture combination efficiency of ≈80% (~8 W) was observed. Convergence times were studied to optimize the maximum phase dither amplitudes that are applied to each channel. For a set maximum dither of 0.3 rad, which corresponds to a RMS relative phase offset between the combined channels of λ/10, convergence was able to be achieved in less than 100 µs and maintained through any perturbations at frequencies <10 kHz.
We anticipate that the modularity of the electronics and optical channels will provide system scalability through addition of extra channels and the further amplification of each channel. Investigation into the scalability of the system, both in the power per channel and the number of channels is ongoing.
Portions of this work were presented at the OSA Laser Congress (ASSL, LAC) in 2017, "Coherent beam combination of four holmium amplifiers using direct phase control from a DDS chip and a SPGD algorithm", ATu3A.3.
1. A. Hemming, N. Simakov, J. Haub, and A. Carter, "High power resonantly pumped holmium-doped fibre sources," Proc. SPIE 8982, 898202 (2014). [CrossRef]
2. N. Simakov, Z. Li, Y. Jung, J. M. Daniel, P. Barua, P. C. Shardlow, S. Liang, J. K. Sahu, A. Hemming, W. A. Clarkson, S.-U. Alam, and D. J. Richardson, "High gain holmium-doped fibre amplifiers," Opt. Express 24(13), 13946–13956 (2016). [CrossRef] [PubMed]
3. A. Brignon, Coherent laser beam combining (John Wiley & Sons, 2013).
4. L. Shah, R. A. Sims, P. Kadwani, C. C. Willis, J. B. Bradford, A. Sincore, and M. Richardson, "High-power spectral beam combining of linearly polarized Tm:fiber lasers," Appl. Opt. 54(4), 757–762 (2015). [CrossRef] [PubMed]
5. P. Honzatko, Y. Baravets, F. Todorov, P. Peterka, and M. Becker, "Coherently combined power of 20 W at 2000 nm from a pair of thulium-doped fiber lasers," Laser Phys. Lett. 10(9), 095104 (2013). [CrossRef]
6. G. D. Goodno, L. D. Book, J. E. Rothenberg, M. E. Weber, and S. B. Weiss, "Narrow linewidth power scaling and phase stabilization of 2-μm thulium fiber lasers," Opt. Eng. 50(11), 111608 (2011). [CrossRef]
7. S. McNaught, H. Komine, B. Weiss, R. Simpson, A. Johnson, J. Machan, C. Asman, M. Weber, G. Jones, M. Valley, A. Jankevics, D. Burchman, M. McClellan, J. Sollee, J. Marmo, and H. Injeyan, "100 kW Coherently Combined Slab MOPAs," Proc. OSA/CLEO/IQEC (2009). [CrossRef]
8. B. Pulford, LOCSET phase locking: operation, disgnostics, and applications (The University of New Mexico, 2011).
9. P. F. Ma, P. Zhou, R. T. Su, Y. X. Ma, and Z. J. Liu, "Coherent polarization beam combining of eight fiber lasers using single-frequency dithering technique," Laser Phys. Lett. 9(6), 456–458 (2012). [CrossRef]
10. L. Liu and M. A. Vorontsov, "Phase-Locking of Tiled Fiber Array using SPGD Feedback Controller," Proc. SPIE 5895, 58950P (2005). [CrossRef]
11. T. Weyrauch, M. Vorontsov, J. Mangano, V. Ovchinnikov, D. Bricker, E. Polnau, and A. Rostov, "Deep turbulence effects mitigation with coherent combining of 21 laser beams over 7 km," Opt. Lett. 41(4), 840–843 (2016). [CrossRef] [PubMed]
12. S. J. Augst, T. Y. Fan, and A. Sanchez, "Coherent beam combining and phase noise measurements of ytterbium fiber amplifiers," Opt. Lett. 29(5), 474–476 (2004). [CrossRef] [PubMed]
13. R. Uberna, A. Bratcher, and B. G. Tiemann, "Power scaling of a fiber master oscillator power amplifier system using a coherent polarization beam combination," Appl. Opt. 49(35), 6762–6765 (2010). [CrossRef] [PubMed]
14. D. Y. Stepanov and L. Corena, "Bragg grating fabrication with wide range coarse and fine wavelength control," Opt. Express 22(22), 27309–27320 (2014). [CrossRef] [PubMed]
Article Order
A. Hemming, N. Simakov, J. Haub, and A. Carter, "High power resonantly pumped holmium-doped fibre sources," Proc. SPIE 8982, 898202 (2014).
[Crossref]
N. Simakov, Z. Li, Y. Jung, J. M. Daniel, P. Barua, P. C. Shardlow, S. Liang, J. K. Sahu, A. Hemming, W. A. Clarkson, S.-U. Alam, and D. J. Richardson, "High gain holmium-doped fibre amplifiers," Opt. Express 24(13), 13946–13956 (2016).
[Crossref] [PubMed]
A. Brignon, Coherent laser beam combining (John Wiley & Sons, 2013).
L. Shah, R. A. Sims, P. Kadwani, C. C. Willis, J. B. Bradford, A. Sincore, and M. Richardson, "High-power spectral beam combining of linearly polarized Tm:fiber lasers," Appl. Opt. 54(4), 757–762 (2015).
P. Honzatko, Y. Baravets, F. Todorov, P. Peterka, and M. Becker, "Coherently combined power of 20 W at 2000 nm from a pair of thulium-doped fiber lasers," Laser Phys. Lett. 10(9), 095104 (2013).
G. D. Goodno, L. D. Book, J. E. Rothenberg, M. E. Weber, and S. B. Weiss, "Narrow linewidth power scaling and phase stabilization of 2-μm thulium fiber lasers," Opt. Eng. 50(11), 111608 (2011).
S. McNaught, H. Komine, B. Weiss, R. Simpson, A. Johnson, J. Machan, C. Asman, M. Weber, G. Jones, M. Valley, A. Jankevics, D. Burchman, M. McClellan, J. Sollee, J. Marmo, and H. Injeyan, "100 kW Coherently Combined Slab MOPAs," Proc. OSA/CLEO/IQEC (2009).
B. Pulford, LOCSET phase locking: operation, disgnostics, and applications (The University of New Mexico, 2011).
P. F. Ma, P. Zhou, R. T. Su, Y. X. Ma, and Z. J. Liu, "Coherent polarization beam combining of eight fiber lasers using single-frequency dithering technique," Laser Phys. Lett. 9(6), 456–458 (2012).
L. Liu and M. A. Vorontsov, "Phase-Locking of Tiled Fiber Array using SPGD Feedback Controller," Proc. SPIE 5895, 58950P (2005).
T. Weyrauch, M. Vorontsov, J. Mangano, V. Ovchinnikov, D. Bricker, E. Polnau, and A. Rostov, "Deep turbulence effects mitigation with coherent combining of 21 laser beams over 7 km," Opt. Lett. 41(4), 840–843 (2016).
S. J. Augst, T. Y. Fan, and A. Sanchez, "Coherent beam combining and phase noise measurements of ytterbium fiber amplifiers," Opt. Lett. 29(5), 474–476 (2004).
R. Uberna, A. Bratcher, and B. G. Tiemann, "Power scaling of a fiber master oscillator power amplifier system using a coherent polarization beam combination," Appl. Opt. 49(35), 6762–6765 (2010).
D. Y. Stepanov and L. Corena, "Bragg grating fabrication with wide range coarse and fine wavelength control," Opt. Express 22(22), 27309–27320 (2014).
Alam, S.-U.
Augst, S. J.
Baravets, Y.
Barua, P.
Becker, M.
Book, L. D.
Bradford, J. B.
Bratcher, A.
Bricker, D.
Carter, A.
Clarkson, W. A.
Corena, L.
Daniel, J. M.
Fan, T. Y.
Goodno, G. D.
Haub, J.
Hemming, A.
Honzatko, P.
Jung, Y.
Kadwani, P.
Li, Z.
Liang, S.
Liu, L.
Liu, Z. J.
Ma, P. F.
Ma, Y. X.
Mangano, J.
Ovchinnikov, V.
Peterka, P.
Polnau, E.
Richardson, D. J.
Rostov, A.
Rothenberg, J. E.
Sahu, J. K.
Sanchez, A.
Shah, L.
Shardlow, P. C.
Simakov, N.
Sims, R. A.
Sincore, A.
Stepanov, D. Y.
Su, R. T.
Tiemann, B. G.
Todorov, F.
Uberna, R.
Vorontsov, M.
Vorontsov, M. A.
Weber, M. E.
Weiss, S. B.
Weyrauch, T.
Willis, C. C.
Zhou, P.
Appl. Opt. (2)
Laser Phys. Lett. (2)
Opt. Eng. (1)
Opt. Express (2)
Opt. Lett. (2)
Proc. SPIE (2)
OSA participates in Crossref's Cited-By Linking service. Citing articles from OSA journals and other participating publishers are listed here.
Alert me when this article is cited.
Click here to see a list of articles that cite this paper
View in Article | Download Full Size | PPT Slide | PDF


text:
The rest of the Barton bourbon warehouse collapsed. Here's what we know
The rest of the rackhouse storing Barton 1792 bourbon collapsed amid area July 4 celebrations. Crews are at the Bardstown distillery assessing damage
The rest of the Barton bourbon warehouse collapsed. Here's what we know The rest of the rackhouse storing Barton 1792 bourbon collapsed amid area July 4 celebrations. Crews are at the Bardstown distillery assessing damage Check out this story on courier-journal.com: http://www.courier-journal.com/story/news/2018/07/04/barton-1792-distillery-bourbon-warehouse-collapses-again-bardstown-kentucky/758091002/
Beth Warren and Robert Shipman, Louisville Courier Journal Published 3:21 p.m. ET July 4, 2018 | Updated 11:17 a.m. ET July 6, 2018
An aerial view of the fully collapsed bourbon-aging barn at the Barton's 1792 distillery in Bardstown, Kentucky. After half of the barn collapsed on June 22nd, the other half collapsed on the Fourth of July holiday. July 5, 2018(Photo: Alton Strupp/Courier Journal)Buy Photo
This wasn't supposed to happen — thousands more bourbon barrels tumbling to the ground at a Bardstown distillery while most Kentuckians celebrated the July 4 holiday, some with bourbon libations.
But it did. Despite attempts to shore up Barton 1792 Distillery's seven-story warehouse after half of its wooden-structure fell June 22 in Bardstown, Kentucky, the rest of the rackhouse collapsed Wednesday.
The alert to Nelson County Dispatch came at 2:20 p.m.
The latest: Barton 1792 spill filled big bourbon ponds with thousands of gallons
The initial collapse of Warehouse 30 sent about half of the 18,000 or so barrels crashing to the ground, many shattering upon impact. The remaining barrels and what was left of the warehouse structure fell Wednesday.
No one was injured in either incident. It's too early to quantify the damage — the value of bourbon or the potential environmental impact.
An aerial view of the fully collapsed bourbon-aging barn at the Barton's 1792 distillery in Bardstown, Kentucky. After half of the barn collapsed on June 22nd, the other half collapsed on the Fourth of July holiday. July 5, 2018 (Photo: Alton Strupp/Courier Journal)
Background: Thousands of bourbon barrels spill from collapsed Barton 1792 warehouse
After the first collapse, Barton's distillery team was prepared with equipment on site to address further problems from the structure that remained standing, Amy Preske, a spokeswoman for Barton's parent company Sazerac, said in a statement Wednesday.
"As a result of the Barton 1792 Distillery team's preparation and quick action, no runoff from today's collapse entered any waterways," Preske said in the statement.
The remaining portion of the warehouse was unable to be secured after the initial collapse due to worker safety concerns, Preske said. It is unknown at this time how many barrels can be salvaged.
Officials expect it to be weeks before the cause of the collapse is determined, she said in the statement. And plans are underway to build a new warehouse to store the recovered barrels.
Aerial photos of complete collapse at Barton's 1792 bourbon warehouse
An aerial view of the fully collapsed bourbon aging barn at the Barton's 1792 distillery in Bardstown, Kentucky. After half of the barn collapsed on June 22nd, the other half collapsed on the Fourth of July holiday. July 5, 2018 Alton Strupp/Courier Journal
"The remaining barrel warehouses at Barton 1792 Distillery have been inspected since June 22 by third party experts and are deemed safe," Preske said in the statement. "Barrel warehouses at the other two Sazerac owned distilleries in Kentucky have also been inspected and deemed safe."
Bardstown Fire Chief Billy Mattingly said once his crews arrived on scene there wasn't much they could do.
Mattingly, a Bardstown native, said he's never heard of a bourbon warehouse collapsing there before. He did remember a different company losing several barrels in a Bardstown fire in the mid-1990s.
He said Barton officials built dikes to catch the run off after the first collapse, so he hoped a second environmental spill would be lessened if not avoided.
Barton bourbon is owned by the New Orleans-based Sazerac company, which also owns the Buffalo Trace Distillery in Frankfort. Barton 1792 Distillery, established in 1879, is the oldest fully-operating distillery in Bardstown, Kentucky, according to its website.
More on this: Kentucky could fine Barton 1792 after warehouse collapse kills fish
Not all of the 9,000 barrels affected in the initial collapse leaked, according to the state's Department of Environmental Protection, but at least some under the rubble did spill bourbon and brandy into nearby waterways.
About 800 fish were killed in Withrow Creek, which empties into Beech Fork River, officials said in June. Fish were already beginning to move back into the area by June 23, according to information from the state department.
Nelson County Fire & Rescue Chief Billy Mattingly said officials on site of the initial collapse reacted quickly to catch alcohol leaking from the barrels before it ran down the hill into streams, but alcohol flowed from about 10:30 a.m. to 2 p.m. before it was controlled.
The Kentucky Energy and Environment Cabinet said after the initial collapse that it plans to cite Sazerac for "failing to report the incident in a timely manner" and "polluting the waterways of the commonwealth." Cabinet spokesman John Mura said the citations could lead to a $25,000 fine per day and per incident.
You may like: From 'bourbonado' to big spills: Kentucky's historic bourbon disasters
Kentucky distilleries are aging a total 6.8 million bourbon barrels, according to the Kentucky Distillers' Association. The collapsed barrel-aging warehouse is one of 29 on the distillery's 196 acres, which also features 22 other buildings, including a still house. The distillery employed 392 full-time employees in 2017, according to a Kentucky incentives database.
While nobody was injured in the initial collapse, it did spook some nearby residents. Stephanie Elliott lives just five yards away from a massive warehouse holding thousands of bourbon barrels, just like the one that collapsed.
"That makes it scary living here," Elliott, a 38-year-old mother of three told the Courier Journal in June. "If it had been this one and not that one it would have taken out our house, or worse."
Tyree Mathews, 71, said when the wind is just right, he can catch the smells of the corn mash.
"The warehouses look so solid," he previously told Courier Journal. "I hadn't even thought about it as a possibility until it happened."
What is a rickhouse?
Rickhouses or rackhouses are whiskey-aging warehouses where barrels are stored in "ricks," or racks that stack barrels three high and store them on their sides, according to whiskeyadvocate.com.
How much bourbon is in one barrel?
The typical bourbon barrel is 53 U.S. gallons in size, which is the de facto standard whiskey barrel size worldwide. Some distillers transfer their whiskey into different barrels to "finish" or add qualities to the final product.
Reporters Thomas Novelly and Darcy Costello contributed to this story.
Reporter Beth Warren: bwarren@courier-journal.com; 502-582-7164; Twitter @BethWarrenCJ. Support strong local journalism by subscribing today: www.courier-journal.com/bethw.
Aerial photos from partially-collapsed Barton 1792 bourbon warehouse
A partially-collapsed bourbon warehouse at the Barton 1792 distillery in Bardstown, Kentucky. June 23, 2018 Michael Clevenger/Courier Journal
The Barton 1792 distillery in Bardstown, Kentucky. June 23, 2018 Michael Clevenger/Courier Journal
Read or Share this story: http://www.courier-journal.com/story/news/2018/07/04/barton-1792-distillery-bourbon-warehouse-collapses-again-bardstown-kentucky/758091002/
Second Great Flood Brewing Co. location will offer a full menu
This pint-size trailer is the travel home on wheels for the adventurous type
Mocktails, plant-based meat and comfort food. Here are 7 Louisville food trends for 2020
Online dating is like dipping your toe into a plant society. Here's how to do it well
We want to recognize everyday trailblazing women in Kentucky. Who uplifts you?
Hey, bud: Unusual Louisville weather is causing plants to bloom

redpajama_set_name: RedPajamaCommonCrawl


Got the call. Good luck to all!!
Is your class the one with the regional class? I think it's the 247/29th regional with OPD.
I completed my Oral interview last Saturday the 20th. How long is the approximate wait until we receive an email to send in the packet / phq / phs.
Did you already get the email stating you passed and to wait for them to contact you before sending in your packet??
Anyone get a call from the group that had to turn in their packets on June 9th?
I took my Oral last month June 20th and I'm currently on the list. I'm just waiting patiently for that call while gathering all my paperworks.
Last edited by Jes_padilla; 07-08-2015, 01:48 AM.
Thanks for the tips guys. Much appreciated.
Last edited by Jes_padilla; 07-08-2015, 01:49 AM.
Sounds good. As soon as i hear something i let you know.
i got that email , telling me to wait to be contacted to send in my packet.However, i have not recieved the email to turn in the packet Have you recieve the email yet?
Last edited by Charles2194; 07-09-2015, 12:43 AM.
For the possible upcoming August Academy does anybody know when the call will go out? I hear they do 2 weeks in advance but that is speculation.
2 weeks is the minimum but I've heard sometimes 3 weeks to a month. I've met a few folks that have already received final calls for SFPD's August academy. If you don't get a call, don't sweat it. There's one more class after August and 3-5 more academies next year. Also, the supervisors passed a bill to add another 300 officers. Good luck!
I heard 248 should get called fairly soon! Be ready!
There are currently 7349 users online. 250 members and 7099 guests.


text:
\section{Odd double factorial}

The \textit{Stirling numbers of the first kind and second kind}, denoted $s(n,k)$ and $S(n,k)$ respectively, are characterized by \begin{align}
\sum_{k=0}^n s(n,k)x^k = n!\binom{x}{n}, \quad x \in \mathbb{R}, \label{first} \end{align} \begin{align}\sum_{k=0}^n k!\binom{x}{k}S(n,k) = x^n, \quad x \in \mathbb{R}, \label{second} \end{align} and we have an explicit formula \cite[equation 13.32]{Gould} relating the two sets of numbers, \[s(n,n-k) = \sum_{j=0}^k(-1)^j\binom{n+j-1}{k+j}\binom{n+k}{k-j}S(j+k,j).\] Also, \begin{align}(-1)^ks(n,n-k) &= \sum_{j=0}^k(-1)^{j+k}\binom{n+j-1}{k+j}\binom{n+k}{k-j}S(j+k,j) \label{third}\\
&= \frac{(n+k)!}{(2k)!(n-k-1)!}\sum_{j=0}^k(-1)^{j+k}\binom{2k}{k-j}\frac{S(j+k,j)}{n+j} \nonumber\\
&= \frac{1}{(2k)!}\sum_{j=0}^k(-1)^{j+k}\binom{2k}{k-j}\frac{C(n,k)}{n+j}S(j+k,j) \nonumber
\end{align}
with $C(n,k) = (n-k)(n-k+1)\cdots (n+k)$. For fixed integer $k\geq 0$, since $(-1)^ks(n,n-k)$ is a polynomial in $n$ over the rationals with leading coefficient $\frac{(2k-1)!!}{(2k)!}$ by \cite[proposition 1.1]{Gessel} and $C(n,k)$ is a monic polynomial in $n$, then \begin{align} (2k-1)!! = \sum_{j=0}^k(-1)^{j+k}\binom{2k}{k-j}S(j+k,j). \label{fourth}\end{align}

Compare this result with \[k! = \sum_{j=0}^k(-1)^{j+k}\binom{2k+1}{k-j}S(j+k,j),\] found by setting $n=k+1$ in \eqref{third}. See \cite[equation 14.34]{Gould}. From a survey of identities for the double factorial, we also have \[(2k-1)!! = \sum_{j=0}^k(-2)^{k-j}s(k,j).\] See \cite[identity 5.3]{Callan}. This easily follows by plugging $x = -\frac{1}{2}$ in \eqref{first}. Notice the summation is over non-negative integers whereas identity \eqref{fourth} involves both negative and positive integers. Setting $x=-\frac{1}{2}$ in \eqref{second} gives us \[1=\sum_{k=0}^n(-2)^{n-k}S(n,k)(2k-1)!!,\] an interesting expression but not one that allows us to solve for the odd double factorial like we have in \eqref{fourth}. Identity \eqref{fourth} was initially discovered during the preparation of an expository paper \cite{Hussein} on Wolstenholme's Theorem.

redpajama_set_name: RedPajamaArXiv


text:
Q: Can't autowire a ScoreManager in optaplanner while using a custom solver xml configuration Hello im using optaplanner, i've created a custom xml file solver like below :

and in my controller i've tried to autowire my SolverManager
The problem is when using the default SolverManager the ScoreManager is autowired successfully but here it return always an error that it couldn't be autowired is theire a solution to that.
Thanks in advance.

A: Could you please explain what is the motivation for using a custom SolverManager? If you need a custom solver configuration, it can be achieved by setting the property optaplanner.solver-config-xml. Please see the Spring Boot integration section in the documentation.

redpajama_set_name: RedPajamaStackExchange


text:
Comal ISD Wins Art Award from Texas Art Education Association
Stephanie Johnson September 18, 2020
This is the second year in a row that Comal ISD received the prestigious art award.
Comal ISD was named a "District of Distinction" by the Texas Art Education Association (TAEA), the district said today.
This places the district among 18 districts to receive the honor two year in a row and in the top four-percent of all ditricts in the state with such an honor.
This is only the second year of the statewide award, which recognizes districts with outstanding leadership in promoting the arts in schools and the community.
"Our art teachers have once more exhibited fabulous leadership by offering more opportunities to showcase our students' talents through competitions and in galleries," said Carla Schumann, Comal ISD director of Fine Arts. "These additional opportunities enhance our program, and we are proud to be named once more a District of Distinction."
Comal ISD employs 46 art teachers at its elementary, middle- and high-school campuses. Some 15,170 students participate in art classes.
Elementary campuses have their own art instructors with weekly lessons while middle- and high-school campuses offer a variety of courses including drawing, painting, sculpting, ceramics, jewelry, art history and advanced placement studio art. In addition, student organizations such as the National Art Honor Society and art clubs are available on high school campuses.
Student artwork is displayed in art shows on campuses and at the district office as well as the New Braunfels Art League Gallery, Dia de Los Muertos Art Show, Visual Arts Scholastic Event (VASE), Austin Rodeo Art contest, Comal County Fair Art Show, Youth Art Month, Art on 12 Art Gallery in Wimberly, the New Braunfels Public Library and many more.
New Braunfels Man in His 30s Dies of COVID-19
Take a DAM Fine Sunday Drive Across the Top of Canyon Dam


text:
Q: Highchart x-axis hide only values greater than 100 Im using highchart reversed bar graph below

I want to hide any values on x-axis after 100. I do not want to set max value property to 100 because it decreases the graph area. I want same width for this graph but no values should be shown after 100. Meaning 120 shouldn't display, or any value greater than 100.
This is a standard highchart bar graph.
Below is the code
Highcharts.chart('container1', {
            chart: {
                type: 'bar',
                marginRight: 12
            },
            exporting: {
                enabled: false
            },
            credits: {
                enabled: false
            },
            yAxis: {
                labels: {
                    formatter: function () {

                        if (CAT_percentageMaxValue >= 1.0) {
                            return Highcharts.numberFormat(this.value, 1) + '%';
                        }

                        else {

                            return this.value + '%';
                        }
                    }
                },

            title: { text: '' }

        },

            title: {
            text: 'Category Percentage',
            style: {
                // color: '#34495e',
                    fontWeight: '500',
                    fontSize: '16px'
            }
            },

        tooltip: {

                shared: false,

                formatter: function () {

                    return this.x + '
' + this.series.name + ': ' + this.point.CategoryCount.toLocaleString(langIdFreqScoreCorrelation) + ' (' + Highcharts.numberFormat(this.y, 1) + '%)
'

                }
        },
        xAxis: {
                categories: labelData,
                gridLineWidth: 1

        },
        legend: { enabled: false },
        plotOptions: {

                bar: {
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        formatter: function () {
                            return "" + Highcharts.numberFormat(this.y, 1) + "%";
                        }
                    }
                }
        },
        series: [{
            color: colors[0],
            borderRadiusTopLeft: 3,
            borderRadiusTopRight: 3,
            name: 'Category Percentage',
            data: percentageData
        }],
        });

A: I am not sure if I understood your requirement very well, but I assumed that it is related to the dataLabels position when the yAxis.max is set to 100. You can change the overflow and crop features to allow render dataLabels outside the plotArea.
Demo: https://jsfiddle.net/BlackLabel/L97re0q6/
  dataLabels: {
    enabled: true,
    overflow: 'allow',
    crop: false,
    formatter: function() {
      return "" + Highcharts.numberFormat(this.y, 1) + "%";
    }
  }

API: https://api.highcharts.com/highcharts/series.line.dataLabels.overflow
API: https://api.highcharts.com/highcharts/series.line.dataLabels.crop
Please confirm if it fits your requirements.


text:
Q: Colab suddenly unable to navigate through directories I've been using Google Colab for the past months without issues connecting to drive and typing shell commands with !. However today, an error suddenly occurred and I can't find anything to solve it. Colab seems to magically not be able to navigate through directories. I get an error for any bash commands for directories like cd, pwd, mkdir, etc..
Even after closing, reopening the notebook and restarting Runtime, and only running the single line of code :
!pwd

I get this error :
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Transport endpoint is not connected
pwd: error retrieving current directory: getcwd: cannot access parent directories: Transport endpoint is not connected

whereas you normally would get /content printed by the console.
I've been able to bypass the problem by creating a copy of the Notebook, but I still wanted to ask this question, since after looking in Google, Stackoverflow, Super User, I didn't find a single thread closely related to my issue. I've also looked in Colab's documentation in vain. So I thought it would benefit the community as a whole in the future to open a thread talking about a new issue.
Has anybody encountered the issue and know how to fix this ?
Thanks to all of you :)

A: I faced a similar problem. Here's a quick fix to this:

*

*Go to Colab

*Click on Runtime

*Finally, click on restart runtime.(Caution: Your local variables will be lost)

Now, you'll be able to use shell commands in the colab cell.

A: Without losing your variables in the Colab instance,
Use os library to change directory.
import os
path = "/content" # /content is pretty much the root. you can choose other path in your colab workspace
os.chdir(path)

A: I also had this problem.
Reason: I guess it's because that the directory (where you are in) was accidentally deleted. I got this opinion from here. Then cd and pwd won't work anymore. Now that I can still use python, I tried to use
import os
# I tried to recreate the directory, it was created successfully but I still can't use the `cd` or `pwd` commands.
os.makedir('/root/the_directory_deleted')
# then I tried to restart the kernel of colab to come back to the original path. it works!!!
os._exit(00)

Solution: run the python function above: os.exit(00) to restart the kernel of colab aiming to back to a valid path.
ps: !reboot was forbidden by colab

A: I also meet this problem.
When I training module it suddenly show me a warning, after that my colab still running but the program seems not run.  And I close the web page then I open it again, it show me the warning like you, but my colab looks work again. It still can load module files from Google Drive.


text:
import java.util.ArrayList;

import javax.swing.DefaultListModel;
import javax.swing.JFrame;

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

public class StartMenu extends javax.swing.JFrame {

	// Variables declaration - do not modify
    private javax.swing.ButtonGroup buttonGroup1;
    private javax.swing.JButton FinishButton;
    private javax.swing.JButton RemoveButton;
    private javax.swing.JCheckBoxMenuItem jCheckBoxMenuItem1;
    private javax.swing.JCheckBoxMenuItem jCheckBoxMenuItem2;
    private javax.swing.JCheckBoxMenuItem jCheckBoxMenuItem3;
    private javax.swing.JComboBox<String> jComboDepartment;
    private javax.swing.JComboBox<String> jComboYear;
    private javax.swing.JComboBox<String> jComboSemester;
    private javax.swing.JInternalFrame jInternalFrame1;
    private javax.swing.JLabel DepartmentLabel;
    private javax.swing.JLabel YearLabel;
    private javax.swing.JLabel SemesterLabel;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JList<String> jList1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    //private javax.swing.JTable jTable1;
    // End of variables declaration

    public ArrayList<String> selected_classes = new ArrayList<String>();
    public ArrayList<String> selected_classes_abrv = new ArrayList<String>();
    final DefaultListModel department_list_model = new DefaultListModel();
    private String year, semester;

    /**
     * Creates new form Course_Scheduler_GUI
     */
    public StartMenu() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {

        jCheckBoxMenuItem1 = new javax.swing.JCheckBoxMenuItem();
        jCheckBoxMenuItem2 = new javax.swing.JCheckBoxMenuItem();
        jCheckBoxMenuItem3 = new javax.swing.JCheckBoxMenuItem();
        buttonGroup1 = new javax.swing.ButtonGroup();
        jScrollPane2 = new javax.swing.JScrollPane();
        //jTable1 = new javax.swing.JTable();
        jInternalFrame1 = new javax.swing.JInternalFrame();
        DepartmentLabel = new javax.swing.JLabel();
        jComboDepartment = new javax.swing.JComboBox<>();
        YearLabel = new javax.swing.JLabel();
        jComboYear = new javax.swing.JComboBox<>();
        SemesterLabel = new javax.swing.JLabel();
        jComboSemester = new javax.swing.JComboBox<>();
        FinishButton = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        jList1 = new javax.swing.JList<>();
        RemoveButton = new javax.swing.JButton();
        jLabel4 = new javax.swing.JLabel();

        jCheckBoxMenuItem1.setSelected(true);
        jCheckBoxMenuItem1.setText("jCheckBoxMenuItem1");

        jCheckBoxMenuItem2.setSelected(true);
        jCheckBoxMenuItem2.setText("jCheckBoxMenuItem2");

        jCheckBoxMenuItem3.setSelected(true);
        jCheckBoxMenuItem3.setText("jCheckBoxMenuItem3");

        jInternalFrame1.setVisible(true);

        DepartmentLabel.setText("Department:");

        String[] department_strings_lowercase = { "American Studies", "Anthropology", "Art/Art History", "Biology", "Black Studies", "Business Management", "Chemistry", "Chinese", "Computer Science", "Dance", "Economics", "Education", "English Language Learning", "English", "Environmental Science/Studies", "French Studies", "Gender Studies", "German Studies", "Global Perspectives", "History", "Humanities", "Hispanic Studies", "Int'l Literature & Culture", "International Studies", "Mathematics", "Music", "Physical Education", "Philosophy", "Physics", "Political Science", "Psychology", "Sociology", "Theatre"};
        String[] department_strings = { "AMERICAN STUDIES", "ANTHROPOLOGY", "ART/ART HISTORY", "BIOLOGY", "BLACK STUDIES", "BUSINESS MANAGEMENT", "CHEMISTRY", "CHINESE", "COMPUTER SCIENCE", "DANCE", "ECONOMICS", "EDUCATION", "ENGLISH LANGUAGE LEARNING", "ENGLISH", "ENVIRONMENTAL SCIENCE/STUDIES", "FRENCH STUDIES", "GENDER STUDIES", "GERMAN STUDIES", "GLOBAL PERSPECTIVES", "HISTORY", "HUMANITIES", "HISPANIC STUDIES", "INT'L LITERATURE & CULTURE", "INTERNATIONAL STUDIES", "MATHEMATICS", "MUSIC", "PHYSICAL EDUCATION", "PHILOSOPHY", "PHYSICS", "POLITICAL SCIENCE", "PSYCHOLOGY", "SOCIOLOGY", "THEATRE"};
        String[] department_abrv = { "AMS", "ANT", "ART", "BIO", "BLS", "BUS", "CHE", "CHN", "CSI", "DAN", "ECN", "EDU", "ELL", "ENG", "ENV", "FRS", "GEN", "GRS", "GRW", "HIS", "HMN", "HPS", "ILC", "INT", "MAT", "MUS", "PED", "PHL", "PHY", "POL", "PSY", "SOC", "THE" };
        jComboDepartment.setModel(new javax.swing.DefaultComboBoxModel<>(department_strings_lowercase));
        jComboDepartment.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                //jComboDepartmentActionPerformed(jComboDepartment.getSelectedItem().toString());
            	int index = jComboDepartment.getSelectedIndex();
            	jComboDepartmentActionPerformed(department_strings[index], department_abrv[index], department_strings_lowercase[index]);
            }
        });

        YearLabel.setText("Year:");

        jComboYear.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] {"2017", "2018", "2019", "2020"}));
        jComboYear.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
            	year = jComboYear.getSelectedItem().toString();
            }
        });

        SemesterLabel.setText("Semester:");

        jComboSemester.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] {"FALL", "SPRING"}));
        jComboSemester.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
            	semester = jComboSemester.getSelectedItem().toString();
            }
        });

        FinishButton.setText("Finish");
        FinishButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                FinishButtonActionPerformed(evt);
            }
        });

        jList1.setModel(department_list_model);

        jScrollPane1.setViewportView(jList1);

        RemoveButton.setText("Remove Selected");
        RemoveButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                RemoveButtonActionPerformed(evt);
            }
        });

        jLabel4.setText("COURSE SCHEDULER");

        javax.swing.GroupLayout jInternalFrame1Layout = new javax.swing.GroupLayout(jInternalFrame1.getContentPane());
        jInternalFrame1.getContentPane().setLayout(jInternalFrame1Layout);
        jInternalFrame1Layout.setHorizontalGroup(
            jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jInternalFrame1Layout.createSequentialGroup()
                .addGap(23, 23, 23)
                .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel4)
                    .addGroup(jInternalFrame1Layout.createSequentialGroup()
                        .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(FinishButton)
                            .addGroup(jInternalFrame1Layout.createSequentialGroup()
                                .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(DepartmentLabel)
                                    .addComponent(YearLabel)
                                    .addComponent(SemesterLabel))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jComboSemester, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jComboYear, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jComboDepartment, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addGap(59, 59, 59)
                        .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 150, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(RemoveButton))))
                .addContainerGap(25, Short.MAX_VALUE))
        );
        jInternalFrame1Layout.setVerticalGroup(
            jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jInternalFrame1Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jLabel4)
                .addGap(29, 29, 29)
                .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jInternalFrame1Layout.createSequentialGroup()
                        .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(DepartmentLabel)
                            .addComponent(jComboDepartment, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(18, 18, 18)
                        .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(YearLabel)
                            .addComponent(jComboYear, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(18, 18, 18)
                        .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(SemesterLabel)
                            .addComponent(jComboSemester, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(jInternalFrame1Layout.createSequentialGroup()
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jInternalFrame1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(RemoveButton)
                            .addComponent(FinishButton))))
                .addContainerGap(62, Short.MAX_VALUE))
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jInternalFrame1)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jInternalFrame1)
        );

        pack();
    }// </editor-fold>

    public String getYearSemester(){
    	return year + semester;
    }

    public ArrayList<String> getDepartments(){
		return selected_classes;
	}

    public ArrayList<String> getDepartmentCodes(){
    	return selected_classes_abrv;
    }

    private void RemoveButtonActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
    	int toRemove = jList1.getSelectedIndex();
    	department_list_model.remove(toRemove);
    	selected_classes.remove(toRemove);
    	selected_classes_abrv.remove(toRemove);
    	System.out.println(selected_classes);
    }

    private void jComboDepartmentActionPerformed(String departmentName, String departmentAbrv, String departmentLowercase) {
        // TODO add your handling code here:
    	if(!selected_classes.contains(departmentName)){
    		selected_classes.add(departmentName);
    		selected_classes_abrv.add(departmentAbrv);
        	department_list_model.addElement(departmentLowercase);
    	}

    	System.out.println(selected_classes);
    	System.out.println(selected_classes_abrv);

    }

    private void FinishButtonActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
    	//new CalendarUI().setVisible(true);
    	JFrame newFrame = new JFrame();
    	newFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);
    	newFrame.add(new CalendarUI());
    	newFrame.pack();
    	newFrame.setVisible(true);
    }

    public static void openStartMenu(){
    	try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(StartMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(StartMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(StartMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(StartMenu.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new StartMenu().setVisible(true);
            }
        });
    }

}

redpajama_set_name: RedPajamaGithub


text:
Lending Starts to Open for Small Properties
Here is good news for owners of small multifamily properties who may be seeking financing: Lenders are becoming active in this sector again.
Keat Foong
May 26, 2011
Low-balance financing is once again starting to become competitive for lenders, now that banks have cleaned their balance sheets and are returning to the sector, observes Bill Hughes, senior vice president and managing director of Marcus & Millichap Capital Corp. "The level of competition among lenders is equal to, or even greater than, that in conventional financing," says Hughes. "One reason is that local and regional community banks are becoming highly active in the sector. They feel comfortable underwriting in their local markets."
Borrowers interested in taking out small loans are starting to have a greater array of choices. According to Hughes, regional and local banks are the biggest sources of small loans today, followed by Fannie Mae, which had a 15 percent market share in 2009. (Freddie Mac does not have a small loans program.) A distant third as a capital source is credit unions, which are very localized in their approach, lending only to very local players. "Accessing credit union capital is a little more challenging, but we have done it," he notes. Additionally, a handful of life insurance companies are interested players in the sector, though they are still very few in number, says Hughes.
Small loans make up the overwhelming majority of loans made in the country today. According to the Mortgage Bankers Association's "2009 Survey on Multifamily Lending," small loans of up to $3 million comprised 81 percent of all multifamily loans made, though by dollar volume, they are only 27 percent of the market. Small multifamily properties tend to be concentrated in urban areas such as New York City and Los Angeles, and tend to be targeted to the affordable and working classes. According to Fannie Mae's January 2011 report on its role in the sector, the financing market for small loans is still fragmented, with 2,600 lenders originating an average of six small loans each.
Smaller multifamily properties can be considered riskier propositions by lenders. Their owners are small "shops" rather than professional investors and managers, and a few vacancies can push up the percentage of vacant units dramatically since the total number of units is relatively small. The sponsor's personal financial wherewithal and propensity to sustain the loan servicing payments therefore takes on added importance for lenders who are extending small loans. And the underwriting on multifamily small loans may have a slightly different angle compared to that for larger loans.
Additionally, the pricing can be slightly higher than for larger loans, and small balance financing tends to be recourse, even under the Fannie Mae program. Loans below $3 million that are not in primary or secondary markets are typically recourse, whether the financing is obtained from Fannie Mae, banks or insurance companies. Fannie Mae allows non-recourse in certain markets and for lower leverage transactions. Recourse is required by Fannie Mae for loans of $750,000 or less with the principal executing a payment guarantee document.
Banks provide capital
With the improving economy, lenders are generally stepping back into the financing market in greater numbers, and this includes small loans lenders. JP Morgan Chase is one big bank that may be a source for small multifamily loans today, but national commercial banks are generally not in the small loans arena, says Hughes. However regional and local community banks are predominant in the sector, and many of them have re-entered the market. Hughes cites two banks that were not in the market six months ago but are competing "very aggressively" in the market today. "Banks are making a comeback," agrees Tom Wilson, director at HFF (Holliday Fenoglio Fowler LP). "They have money they want to put out. The number of banks that are in the market looking to put out money has definitely fallen, but the ones that are still in the market are looking to do deals."
In the experience of Michael Kelly, president and co-founder of Caldera Asset Management, a multifamily consultant and turnaround specialist, the bulk of the small loan business of less than $3 million is still almost exclusively "a local bank business." He is seeing generally 60 percent to 75 percent loan-to-value (LTV) ratios and some sort of recourse including top-tier guarantees. Banks are generally lending only to clients with whom they have current relationships, he observes.
Life companies have returned in a big way on the conventional large-loan side of the market, but only a few of them will play in the small loans space. And at this point, these loans are limited to Class B or better quality assets in primary and secondary markets, says HFF's Wilson. "If it is a good asset in a good market with a good sponsor and it is underwritten appropriately in the $1 million to $3 million range, there are a handful of life companies that will finance these transactions." Wilson cites a transaction that HFF arranged: a $3.5 million Class B+ asset in a "triple-A" location in Portland, Ore. "The life companies jumped all over it," he says.
Indeed, all over the commercial financing world, the bulk of the capital is still limiting itself to the major markets. The life companies will finance mostly in the primary markets. Fannie Mae will finance small loans in the primary down to the secondary markets, but not so much the tertiary markets, say financing brokers. For tertiary markets, borrowers will have to resort to regional or local banks. And for "micro" amounts of less than $500,000, the main supplier will also be regional or local banks, says Wilson. Life companies may finance a minimum of only $1 million.
In choosing among different capital sources, borrowers will find that Fannie Mae and bank small loan financing are comparable in pricing today, says Hughes. Borrowers can expect interest rates of 5.75 percent to 6.25 percent for 10-year fixed rate mortgages from Fannie Mae or banks, though 10-year bank financing may have interest rate resets after five years. Interest rates for five-year loans are slightly lower, at 5.25 percent to 5.75 percent. Life companies charge comparable interest rates, of about 5.5 percent to 6 percent, says Wilson.
One advantage life company small loan financing offers over Fannie Mae is the ability to lock interest rates upfront—-at loan application or one or two weeks after loan application, says Wilson. "There are a handful of life companies that can compete on rate and be inside of Fannie Mae, especially for infill locations and quality properties," says Wilson.
The maximum LTV ratio for Fannie Mae small loans is now as high as 80 percent. However, a minimum debt service coverage (DSC) ratio of 1.25‑1.30 in many markets typically acts as a constraint on the loan dollars provided under the agency. "Given the DSC requirements, getting to 80 percent LTV can be a huge challenge," says Hughes. Commercial banks will furnish up to 80 percent LTV, but they will come down to 1.15 DSC for "relatively new assets with good borrower sponsorships." Credit unions' maximum LTV is a lower 70 percent to 75 percent, with typical DSC of 1.25 percent, says Hughes. And life companies' LTV requirements for small loans are topping out at about 70 percent, with a maximum DSC of 1.25 percent, says Wilson.
Lenders scrutinize loans
Underwriting on small-sized multifamily properties is more focused on the borrower than for larger loans. Lenders scrutinize the borrower, integrity of rent roll and consistency of cash flow closely. "There is a greater reliance on the borrower [for small loans] than for large loans because it is such a hands-on investment medium," says Hughes. "[Lenders] want to really understand who the investor is." Even if the property is older, the lender wants to ensure there is no deferred maintenance; the building has been brought functionally up-to-date; the rent rolls are stable; the property has been operating for a period of time; and the borrower has a certain amount of experience, say Hughes. Borrowers will typically need FICO scores above 650, he adds.
"Fannie Mae looks really hard at small borrower transactions. They are a stickler for well-maintained properties and local operators who are not first-time investors moving into the area," says Hughes. "[Lenders] do not like absentee owners. Everyone wants local investors because those are the hands-on investors."
Lenders will not hesitate to drill down to check whether there is any one concentration of residents that work with a certain employer, says Wilson. "If 50 percent of units are occupied by employees of Nike, that could be a concern," he comments. "Deals in which 20 percent to 25 percent of residents are exposed to one employer can go from 100 percent to 75 percent occupancy very quickly." Capital providers prefer longer leases of six to 12 months, and month-to-month leases are not viewed as favorably.
Players expect the small loans market to open up further in the months ahead as lenders look for business opportunities. As CMBS ramps up and becomes more competitive, players may already have begun to enter the $5-million-and-smaller multifamily financing segment, says Wilson. Caldera's Kelly also expects more offerings in the second half of the year. Mortgage bankers will need to replace loans that have run off, and given that the land loans and new construction business are not very active, "the $3 million apartment loan with top-tier guarantee will look very good," says Kelly.
To comment on this story, email Keat Foong at kfoong@multi-housingnews.com.
JPMorgan Chase's Head of CRE: Prepare for a Correction
A Lender's View of the Student Housing Investment Market
In Case You Missed It: MHN's Top 5 Posts in June
Jacksonville Apartments Command $63M


The Batu Caves complex is one of the most cherished historical religious attractions in Malaysia.
Even though the caves are located just 15 kilometers from the high-rise district of central Kuala Lumpur, the beautiful nature atmosphere and the cultural significance of the site, make it seem like it's far from any sky scrapers or highways.
Dedicated to Lord Murugan, the Batu Caves are the most sacred Hindu shrine in Malaysia, and one of the most revered Hindu pilgrimage locations outside of India.
Though the streep climb to the top looks quite challenging from the ground, in actuality, it wasn't really all that difficult.
The 272 steps went pretty quickly, especially since I was peering up to top with my eyes on the goal of reaching the summit the entire time.
I think it took me just 5 minutes, and though I was sweating, I was greeted by a cool breeze coming from the mouth of the cave.
Along the hike, you'll encounter some not so friendly monkeys that are cute to look at, but have hearts of mischief. Bust out some food on the steps and you'll have to share!
The first cave you encounter is known as Temple Cave, a massive cathedral looking open area with a ceiling that's over 100 meters in height.
The main path leads straight through this cave, passing a number of shrines on either side, and finally reaching the next shorter flight of steps.
After walking through Temple Cave and ascending the final flight of steps you'll get to the Lord Murugan temple.
This temple is minimal in design, but intricately painted and decorated with bright colors.
At the top of the cave is a big hole in the rock which allows natural light to illuminate the area.
Though most of the Batu Caves complex is dedicated to Hindu religious shrines, certain areas have recently been developed for sports, leisure and tourism.
The Dark Cave, located below the main Temple Cave, is set aside for caving tours. There are a number of unique animal species living within the cave including rare spiders and fruit bats.
The dramatic limestone cliffs also make the Batu Caves a wonderful place to rock climb. Away from the shrines you'll find beautiful climbing routes along the cliff walls. Some routes are quite easy with simple hand holds, while others can be technical and include overhangs.
Along with rock climbing, there's also a cliff in the area that's used as an official BASE jumping (free jumping with nothing but a parachute) launch pad.
At the base of the caves are a series of pure-vegetarian Indian restaurants. As soon as I arrived, I debated wether I should eat before climbing the steps or after.
Luckily I chose the latter option so I was able to reward myself with a delicious Malaysian food meal after descending.
Served on a banana leaf, this Southern Indian style meal consisted of rice, daal (lentils), a potato curry, some vegetables and an awesome tasting bitter gourd curry. The great thing about these restaurants is that they will replenish your rice and curries until you're stuffed and satisfied.
After two large helpings, I had happily replaced all my lost calories from the climb.
The Batu Caves, with their natural beauty and religious significance, shouldn't be missed when you visit Kuala Lumpur.
Good write-up, Mark. Batu Caves is on my radar for my next trip to Malaysia so very timely for me. I won't be doing any base-jumping if I do make it there, but I will be trying some of that food you featured!
Thank you for the photographs. I went there about 15 years ago, but I have since lost the photos, although I remember the monkeys very well. If they see the slightest sign of potential food they will surround you. When I was there they incouraged you to buy food for them. Does that still happen?


text:
Best small- to medium-sized live music venues in Buffalo
Updated: Oct. 08, 2019, 9:53 a.m. |
Jana Eisenberg
For the music lovers out there, you know there's nothing like seeing and hearing it played live. If you're newer to the going-out scene, Buffalo has a range of bars, clubs and venues to try—check out the websites and see if something sounds interesting, or just take your chances. And have a toe-tapping, finger-snapping good time!
Texas swing isn't dead. It's just Asleep at the Wheel. @asleepatthewheel1970 #asleepatthewheel
A post shared by Jeff Tracy (@starpointjtracy) on Jul 10, 2018 at 4:40pm PDT
Sportsmens Tavern
326 Amherst St.
Americana music is king here—the name is an umbrella term for country, blues, bluegrass, R&B, rock and roll, honky-tonk, etc. and the many combinations thereof, whether played on acoustic or electric instruments.
Sportsmens is owned by Dwane and Denise Hall. Their passion for both music and community has propelled this venue into not just national but international prominence. In 2018, the Ameripolitan Music Awards named it "best venue in the world" for the genre.
It's a favorite hang-out for local musicians, who appear in low-cost weekly shows, and also for bigger name traveling acts from Texas, like Asleep at the Wheel and Jim Lauderdale.
For those shows, tickets are still reasonable for an up-close-and-intimate performance in a sweetly gritty space.
Joed Viera
Pausa Art House
19 Wadsworth St.
An under-the-radar Allentown venue that has been building its audience and its viability as a committed music venue with methodical patience. Founders Jon Nelson and Lazara Martinez wanted to create a space that presents art and music in an intimate setting; Martinez, a Cuban-born musician, is now the sole owner, and she has achieved that goal.
They're booking the best local musicians in a wide range of genres (jazz, acoustic, singer/songwriter, Celtic, Latin, flamenco, opera) as well as national and international acts into the small venue.
There's frequently an art show hanging on the walls, and they also offer a full bar and tapas menu.
FRIDAY at Nietzsche's: 6:00pm Happy Hour w/ Jony James Band 10:00pm Peacehead, Stereo Nest, and ryan flynn - $5
A post shared by Nietzsche's (@nietzschesbuffalo) on Jan 18, 2019 at 2:46pm PST
Nietzsche's
248 Allen St.
One of Buffalo's legendary music clubs, the Allentown mainstay offers an eclectic mix of musical genres. The front portion of the space is the dimly lit, narrow bar—festooned with over-the-top floor-to-ceiling decorations like giant puppet heads, masks and a wild variety of other artworks and paraphernalia. That's where you'll generally find the hours-long "happy hours" that are free. Shows on the main stage, at the back of the club, are reasonably priced for the quality and quantity of show you're going to get. The stage area, features raised seating over the standing/dancing space so those who choose to sit can still see.
*TONIGHT* We open at 4pm w/ 97 Rock and DJ Jickster for all you Elton John concert-goers, and then Funktional Flow w/ special guest Root Shock starts up at 9 for all the Buffalovers! See you tonight, one way or another! #buffaloironworks #livemusic #funktionalflow #rootshock
A post shared by Buffalo Iron Works (@buffaloironworks) on Sep 15, 2018 at 7:48am PDT
Buffalo Ironworks
49 Illinois St.
Head to the tiny downtown-adjacent Cobblestone District to find this devoted music space. Themed and tribute shows are popular (see for example a recent "'80s, '90s and '00s Disco" night, as well as evenings in homage to acts as disparate as Amy Winehouse, Talking Heads and Phish). They also present artists performing musical styles including jazz, funk, rock and more. Many local and regional acts are presented, alongside those booked from far-away lands like Chicago and Los Angeles.
Thank you for coming in yesterday!! #Buffalove t/h @brandicarlile
A post shared by Babeville (@babevillebuffalo) on Jul 12, 2016 at 11:42am PDT
Asbury Hall and 9th Ward at Babeville
Located in a renovated Gothic Revival style church in downtown Buffalo, the two live music spaces within Ani DiFranco's Babeville offer a range of shows. Asbury Hall, the larger concert hall, books name bands like Indigo Girls and Pat Metheny, as well as more esoteric shows, like former Blues Traveler harmonica player John Popper. The c. 1874 building's system of catacombs has been reimagined into the 9th Ward, a smaller subterranean bar/club offering more intimate shows, in a range of genres.
Repost! Mikal Cronin killing it at the #MohawkPlace back in 2015. Photo by @ericvanrysdam #mikalcronin #buffalo #livemusic #indiemusic
A post shared by Mohawk Place • Buffalo NY (@mohawk_place) on Feb 17, 2019 at 7:36am PST
Mohawk Place
47 East Mohawk St.
Another of Buffalo's gritty "rite of passage" music venues with deep history and a devoted fanbase. It's been mostly open since 1990, with a brief closing in the early 2000-teens. The club's website touts that, notwithstanding repairs to things like plumbing, lighting, floors, etc., new ownership has somehow managed to maintain the "same 'shot and a beer' dive bar warmth" that defines the place. Expect a range of genres, from surf to punk to rock &roll to even the occasional modern burlesque show.
More from NYup.com
Small town charm nestled on the Niagara Gorge: A day in Lewiston, NY
Pass a good time with a taste of New Orleans in the Buffalo area
Lockport, NY: A historic Niagara County destination for the sites and sounds of the Erie Canal
A stroll through one of Buffalo's most hip neighborhoods: Larkinville
Check out Buffalo's huge homegrown gardening scene. Visitors are welcome.
Iconic (non-wings) Buffalo comfort food and where to find it
Find a trove of glorious restored movie houses in the Buffalo area
Buffalo's theater scene: Comedy, tragedy ... quality
Treat yourself: Buffalo's 10 best fine dining
Fine dining options outside Buffalo's city limits
A beginner's guide to Asian eats in Buffalo
How to keep up with your New Year's resolution in Buffalo
Classical Buffalo: Western NY offers plenty of orchestral choices for music lovers
Comfort food: A tour of some of Buffalo's best diners
Elmwood Village: Profile of a unique Buffalo neighborhood
Dining in Buffalo: New restaurants adding to farm-to-table experience
Buffalo distilleries to keep your spirits up: A taste, a dram, a cocktail, anyone?
Buffalo's best Japanese restaurants: A guide to sushi, ramen, more


@RealWayneRoot @realDonaldTrump Right there with ya, Wayne! Couldn'ta said it better me-self!
RT @cricketwallah: All said and done, very brave of @imVkohli to have Moeen bowling the last over!
@LisaBritton @sfrius God created man and woman. "Nuff said.


text:
The latest U.S. news
107-year-old Minnesota woman wins COVID-19
By: Sam Portman
In: Coronavirus
A 107-year-old Minnesota resident recently beat the coronavirus, according to officials at Ecumen Detroit Lakes nursing home, where she has lived since 2015.
This is not the first pandemic Dybing has survived. Born in 1913, she was almost 5 years old when a flu pandemic struck her family farm in North Dakota in 1918. "My folks got sick and they were in bed and I was running on the bed and my dad asked if I could find another place to run," she said.
Throughout her life, Daibing has experienced many losses, including the deaths of several siblings as an infant and her husband, who was 80. She also survived uterine cancer at age 95.
The only symptom of the coronavirus, Dybing said, was fatigue. Nursing home staff said she didn't have a fever or cough; she just slept all the time.
Why the forecaster Edgar Cayce named trump the last president of the United States
Media: Melania Trump files for divorce from Donald Trump
CNN will seek to get Fox News off the air
WHO: asymptomatic carriers of coronavirus are not contagious
American forecaster Edgar Cayce: "Russia will be the new center of the world"
In France, fined a man walking a cat on a leash
Defense of the Earth - NASA will hit an asteroid in September 2021
Trump will give Biden the "nuclear suitcase" in a new way
Chief: Tim Viwer
All rights under the provision of the Copyright Act are reserved @Copyrite by site US-NEWS-LATEST.COM