XML 54 R5.htm IDEA: XBRL DOCUMENT v2.4.1.9
Consolidated Statement of Stockholders' Equity (USD $)
Common Stock [Member]
Additional Paid-in Capital [Member]
Retained Earning [Member]
Treasury Stock [Member]
Total
Balances at Dec. 31, 2011 $ 6,531us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
$ 20,049,196us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
$ 0us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
$ (1,891,509)us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
$ 14,872,314us-gaap_StockholdersEquity
Balances (in shares) at Dec. 31, 2011 6,530,743us-gaap_CommonStockSharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Issuance of common stock under stock option plans 94us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
148,330us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
148,424us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
Issuance of common stock under stock option plans (in shares) 94,425us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Stock compensation expense 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
228,485us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
228,485us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
Repurchases of common stock 0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
(1,034,647)us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
(1,034,647)us-gaap_TreasuryStockValueAcquiredCostMethod
Repurchases of common stock (in shares) 0bstc_TreasuryStockSharesAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Excess tax benefits from share-based payment arrangements 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
262,695us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
262,695us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
Net income 0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
2,981,075us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
2,981,075us-gaap_NetIncomeLoss
Balances at Dec. 31, 2012 6,625us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
20,688,706us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
(310,929)us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
(2,926,156)us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
17,458,346us-gaap_StockholdersEquity
Balances (in shares) at Dec. 31, 2012 6,625,168us-gaap_CommonStockSharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Issuance of common stock under stock option plans 30us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
29,970us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
30,000us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
Issuance of common stock under stock option plans (in shares) 30,000us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Effect of canceled of stock options 0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
(75,928)us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
(75,928)us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited
Effect of expiration of stock options (in shares) 0us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Stock compensation expense 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
111,636us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
111,636us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
Repurchases of common stock 0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
(674,874)us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
(674,874)us-gaap_TreasuryStockValueAcquiredCostMethod
Repurchases of common stock (in shares) 0bstc_TreasuryStockSharesAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Excess tax benefits from share-based payment arrangements 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
197,412us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
197,412us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
Net income 0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
5,285,847us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
5,285,847us-gaap_NetIncomeLoss
Balances at Dec. 31, 2013 6,655us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
20,951,796us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
4,975,018us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
(3,601,030)us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
22,332,439us-gaap_StockholdersEquity
Balances (in shares) at Dec. 31, 2013 6,655,168us-gaap_CommonStockSharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
      6,354,429us-gaap_CommonStockSharesOutstanding
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Issuance of common stock under stock option plans 407us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
2,146,414us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
2,146,821us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation
Issuance of common stock under stock option plans (in shares) 407,042us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Stock compensation expense 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
21,416us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
21,416us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
Repurchases of common stock 0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
(829,613)us-gaap_TreasuryStockValueAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
(829,613)us-gaap_TreasuryStockValueAcquiredCostMethod
Repurchases of common stock (in shares) 0bstc_TreasuryStockSharesAcquiredCostMethod
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
       
Excess tax benefits from share-based payment arrangements 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
1,939,832us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
1,939,832us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
Net income 0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
4,645,960us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
0us-gaap_NetIncomeLoss
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
4,645,960us-gaap_NetIncomeLoss
Balances at Dec. 31, 2014 $ 7,062us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
$ 25,059,458us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AdditionalPaidInCapitalMember
$ 9,620,978us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_RetainedEarningsMember
$ (4,430,643)us-gaap_StockholdersEquity
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_TreasuryStockMember
$ 30,256,855us-gaap_StockholdersEquity
Balances (in shares) at Dec. 31, 2014 7,062,209us-gaap_CommonStockSharesOutstanding
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
      6,730,622us-gaap_CommonStockSharesOutstanding